Moo*_*oon 9 path relative-path requirejs
我在requirejs中遇到相对路径问题.
首先,我有以下结构.我正在使用虚拟主机(os.com)运行它,路径是os.com/test

的index.html
<script data-main="config" src="require.js"></script>
config.js
require.config({
  baseUrl: "./apps",
  deps: ['ui'],
  paths: {
    ui: 'ui/ui',
    system: 'system/system',
    core: 'core/core'
  }
});
ui.js
define(['./class/menuBuilder',"./class/window"], function(menuBuilder, windowBuilder){
    return {
        menuBuilder: menuBuilder,
        windowBuilder: windowBuilder
    }
});
当我运行它时,我得到以下错误.
GET http://os.com/test/apps/class/menuBuilder.js 404 (Not Found)
GET http://os.com/test/apps/class/window.js 404 (Not Found)
如果我从'paths'属性中取出'ui'属性然后将deps更改为['ui/ui'],它可以工作,但我想使用路径.
更改了config.js
require.config({
  baseUrl: "./apps",
  deps: ['ui/ui'],
  paths: {
    system: 'system/system',
    core: 'core/core'
  }
});
如何更改配置以使路径和相对路径一起工作?
Ash*_*hot 12
我有类似的问题.我没有deps:'ui'参与我的配置,只是路径设置,但仍然相对模块引用('./class/menuBuilder')不能从加载路径的模块("ui:'ui)起作用/ ui'")并将使用baseUrl.为了解决这个问题,我将'ui'定义为一个包:
require.config({
  baseUrl: "./apps",
  deps: ['ui'],
  paths: {
    system: 'system/system',
    core: 'core/core'
  },
  packages : [
    { 
        name: 'ui',
        location : 'ui',
        main : 'ui'
    },
  ]
});
在这种情况下,require将正确加载相对模块的模块.
这是一篇有用的文章:RequireJS模块/包的相对路径