1
我想在我现有的angularjs [1.4.7]应用程序中使用webpack。我有一个自定义模块,它使用webpack作为一个包生成。我稍后将该自定义模块添加为其他模块中的依赖项。生成包时我没有收到任何错误。但是当我使用这个模块作为依赖时,它会抛出错误。我尝试了一切可能,并且无法理解这里出现了什么问题。webpack + angular 1.X不起作用
错误 未能实例模块单词数由于: 错误:[$注射器:modulerr] .......... 当模块加载失败由于某种异常发生该错误。上面的错误消息应该提供额外的上下文。
模块无法加载的常见原因是您忘记将文件包含在已定义的模块中,或者文件无法加载。
代码段 webpack.config.js
module.exports = {
entry: {
app: [ './src/main/resources/js/app/app.module.js' ]
},
output: {
filename: './src/main/resources/js/app/bundle.js'
},
node: {
module: "empty",
net:"empty",
fs: "empty"
},
watch: false
};
app.module.js
'使用严格';
var angular = require('angular');
module.exports = angular.module('module1', [
require('./components/services').name,
require('./components/controllers').name,
require('./components/directives').name
]);
组件/服务/ index.js
'use strict';
var angular = require('angular');
module.exports = angular.module('services',[])
.factory('Service1', require('./Service1'))
.factory('Service2' , require('.Service2'))
组件/服务/ service1.js
module.exports = function Service1($q)
{
var service1 = {};
// service implementation
return service1;
};
组件/控制器/ index.js
'use strict';
var angular = require('angular');
module.exports = angular.module('controllers',[])
.controller('controller1' , require('./controller1'))
.controller('controller2' , require('./controller2'));
组件/指令/ index.js
'use strict';
var angular = require('angular');
module.exports = angular.module('directives',['services'])
.directive('directive1', require('./directive1'))
.directive('directive2' , require('./directive2'))
的index.html
<script src="bundle.js" type="text/javascript"></script>
另一个app.js
var app2 = angular.module('Module2',['ui.router','ui.bootstrap','module1']);
第二个模块是一个单独的项目[Intellij中的模块],因此您在这里看不到任何参考。该项目作为Maven依赖关系添加到定义第二个模块的另一个项目中。 – user911
在这种情况下,它可能是执行的顺序,你必须确保你的模块2在你的依赖图 – Yaser
中的模块1之前加载了吗?节点:{ 模块:“空”, 净:“空”, fs:“空” }, – user911