首先,requirejs中加载的模块,就是文件的名称,不需要加上.js。
其次,你a.js里面引用的b.js,路径写的不对。路径还是从main.js里面配置的根目录开始寻找,而不是从a.js所在的位置开始寻找。
所以,你应该这样使用:
1 在main.js配置上通用的js路径。
2 加载a模块(自动加载b模块)
如果还是搞不清楚,推荐去看官方文档。http://requirejs.org/docs/start.html
我requirejs和 require main.js 都是放在静态站点中的 。 baseUrl 是配置的静态站点根路径。
我在自己的动态站点 引用 requirejs和 main.js 。 然后 需要require 自己动态站点的js 。难道我不能使用 绝对路径吗?而且 requirejs官方文档都说了 前缀带 / 或者后缀带.js 时,会以文件形式加载。
现在的问题是 。我加载了a.js了 。但是 a.js里还需要依赖同目录下的b.js 。我在define上使用 ./b 应该会识别为模块吧。可是 最终的http 请求 却是 /script/b 而不带.js。
再说了 。我在我想require我动态站点的 js ,也只能使用 绝对路径吧。
@rainrcn:
动态站点可以使用JSP的方式,或者向后台请求,确定一个基本的根目录。
后续的所有JS文件,都根据这个根目录进行加载就行了。
不用你非得写个绝对路径...
请求时/script/b,还是由于你路径写法有问题。你再好好调试调试吧...最好是放个图上来。