Javascript R.js优化器执行角度库
我在使用r.js优化器优化角度项目时遇到问题 我正在尝试使用grunt requirejs进行优化,在我尝试从构建中排除angular之前,它工作得非常好。然后我在角度路由中得到一个错误,表示角度是未定义的。我想这样做,以便我可以从cdn加载角度路由,但在应用程序中包括角度路由 为什么angular route不等待angular加载 我知道angular会被加载,但有人知道为什么angular路线会在加载之前运行,以及如何修复它吗 应用程序 public/js/requirejs-config.js: Grunfile:Javascript R.js优化器执行角度库,javascript,angularjs,requirejs,gruntjs,Javascript,Angularjs,Requirejs,Gruntjs,我在使用r.js优化器优化角度项目时遇到问题 我正在尝试使用grunt requirejs进行优化,在我尝试从构建中排除angular之前,它工作得非常好。然后我在角度路由中得到一个错误,表示角度是未定义的。我想这样做,以便我可以从cdn加载角度路由,但在应用程序中包括角度路由 为什么angular route不等待angular加载 我知道angular会被加载,但有人知道为什么angular路线会在加载之前运行,以及如何修复它吗 应用程序 public/js/requirejs-config
我自己设法解决了 我需要使用wrapshem并使用deps而不是数组指定依赖项 应用程序 public/js/requirejs-config.js: Grunfile:
如果你有种子项目,你介意分享吗?或者任何博客文章来做这个?我正在尝试做这个优化,并坚持了一段时间。我很抱歉,我已经不在同一家公司工作了,我也没有访问源代码的权限。我希望你能设法解决它
define(['angular', ...], function(angular){
...
});
require.config({
shim: {
angular: {
exports: 'angular'
},
'angular-route': [
'angular'
]
},
paths: {
angular: '../../bower_components/angular/angular',
'angular-route': '../../bower_components/angular-route/angular-route'
}
});
require(['app']);
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
requirejs: {
compile: {
options: {
baseUrl: "public/js",
name: "app",
mainConfigFile: "public/js/requirejs-config.js",
out: "public/js/combined.js",
paths: {
angular: "empty:" //without this it works fine
},
optimize: "none"
}
}
}
});
grunt.loadNpmTasks('grunt-bower-requirejs');
grunt.registerTask('default', ['requirejs']);
};
define(['angular', ...], function(angular){
...
});
require.config({
shim: {
angular: {
exports: 'angular'
},
'angular-route': {
deps: ['angular']
}
},
paths: {
angular: '../../bower_components/angular/angular',
'angular-route': '../../bower_components/angular-route/angular-route'
}
});
require(['app']);
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
requirejs: {
compile: {
options: {
baseUrl: "public/js",
name: "app",
mainConfigFile: "public/js/requirejs-config.js",
out: "public/js/combined.js",
paths: {
angular: "empty:" //without this it works fine
},
wrapShim: true,
optimize: "none"
}
}
}
});
grunt.loadNpmTasks('grunt-bower-requirejs');
grunt.registerTask('default', ['requirejs']);
};