0
我想用requirejs優化器優化某些模塊,但遇到了有關路徑的問題。 main.js
入口點需要/build/modules/
上的組件,但優化模塊的名稱與此路徑不匹配。組件文件被加載,但它定義的功能未被調用。 main_component.js
需要組件moduleA
和moduleB
,而build
的main.js
需要構建main_component.js
。requirejs優化器 - 如何更改優化的模塊名稱
代碼./build/main.js
:
require(['./modules/main_component'], function() {
console.log('main')
})
的./build/modules/main_component
代碼:
/* component definitions ... */
define('main_component',
['require','components/moduleA','components/moduleB'],
function (require) { /* ... */}
)
項目結構:
/
|-- build
| |-- modules
| | +-- main_component.js # optimized file
| +-- main.js
|-- js
| +-- modules
| |-- components
| | |-- moduleA.js
| | +-- moduleB.js
| +-- main_component.js
+-- index.html
另外,我使用的是大口包裝gulp-requirejs-optimize
。這是我的gulpfile:
var gulp = require('gulp')
var requirejsOptimize = require('gulp-requirejs-optimize')
gulp.task('default', function() {
return gulp.src('js/modules/*.js')
.pipe(requirejsOptimize({
optimize: 'none'
}))
.pipe(gulp.dest('build/modules'))
})