相对路径不适用于路径

前端之家收集整理的这篇文章主要介绍了相对路径不适用于路径前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在requirejs中有相对路径的问题.

首先,我有以下结构.我正在运行一个虚拟主机(os.com),路径是os.com/test

的index.html

  1. <script data-main="config" src="require.js"></script>

config.js

  1. require.config({
  2.  
  3. baseUrl: "./apps",deps: ['ui'],paths: {
  4. ui: 'ui/ui',system: 'system/system',core: 'core/core'
  5. }
  6.  
  7.  
  8. });

ui.js

  1. define(['./class/menuBuilder',"./class/window"],function(menuBuilder,windowBuilder){
  2.  
  3.  
  4. return {
  5. menuBuilder: menuBuilder,windowBuilder: windowBuilder
  6. }
  7.  
  8. });

当我运行它,我得到以下错误.

  1. GET http://os.com/test/apps/class/menuBuilder.js 404 (Not Found)
  2. GET http://os.com/test/apps/class/window.js 404 (Not Found)

如果我从“路径”属性中取出“ui”属性,那么将deps更改为[‘ui / ui’],它可以使用,但是我想使用路径.

更改了config.js

  1. require.config({
  2.  
  3. baseUrl: "./apps",deps: ['ui/ui'],paths: {
  4. system: 'system/system',core: 'core/core'
  5. }
  6.  
  7.  
  8. });

如何更改配置以使路径和相对路径一起工作?

解决方法

我也有类似的问题.我没有deps:’ui’在我的配置,只是路径设置,但仍然相对模块引用(‘./class/menuBuilder’)将无法从加载路径的模块(“ui:’ui / ui’“),并使用baseUrl.为了解决这个问题,我把’ui’定义为一个包:
  1. require.config({
  2.  
  3. baseUrl: "./apps",core: 'core/core'
  4. },packages : [
  5. {
  6. name: 'ui',location : 'ui',main : 'ui'
  7. },]
  8.  
  9. });

在这种情况下,需要正确加载相对受影响的模块.

这是一个有用的帖子:Relative paths with RequireJS modules/packages

猜你在找的JavaScript相关文章