我正在尝试在grunt中使用almond.js将我的文件合并到.js上并对其进行uglify。 我在grunt中的配置是这样的:
requirejs: {
compile: {
options: {
baseURL: "www/js/lib",
mainConfigFile: 'www/js/main.js',
name: '../../../node_modules/almond/almond',
include: '../main',
out:'../target/app.min.js',
findNestedDependencies: true,
optimize: 'uglify',
}
}
},
我的main.js是这样的:
require.config({
baseUrl: "js/lib",
paths: {
app: '../app',
tpl: '../tpl'
},
shim: {
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
},
'underscore': {
exports: '_'
},
'backbone-indexeddb': {
deps: ['backbone', 'IndexedDBShim']
},
'IndexedDBShim': {
deps: ['backbone']
}
}
});
如果我尝试运行grunt requirejs,我会收到错误消息: 错误:错误:错误:模块路径不存在:project / www / js / js / lib /../../../ node_modules / almond / almond.js for module named:../../ .. / node_modules /杏仁/杏仁。路径是相对于:项目 在/project/node_modules/grunt-contrib-requirejs/node_modules/requirejs/bin/r.js:25964:35
我不明白,路径中的第二个/ js /来自哪里?它在我的文件结构中不存在,我的项目文件夹设置如下
project
gruntfile
node_modules
almond
almond.js
www
index.html
js
app
lib
main.js
答案 0 :(得分:0)
哦,我已经两次配置了baseurl,不应该这样做。如果我删除gruntfile中的baseurl参数,它可以正常工作。