我正在将Laravel 5.5和AngularJS 1.7与laravel-mix一起使用,但遇到了问题。 Angular无法加载模块。这是我的代码...
webpack.mix.js
mix.scripts([
'node_modules/angular/angular.js',
'resources/assets/js/admin.js'
], 'public/js/all.js');
admin.js
var app = angular.module("admin", []);
app.controller("AdminController", function($scope) {
$scope.doSomething = function(){
console.log('doing something....');
}
});
我在模板的主体中包含了一个Angular模块。
<body class="hold-transition skin-red sidebar-mini fixed" ng-app="admin">
并将js文件混合到Blade模板的页脚中。
<!-- jQuery 3 -->
<script src="{{asset('admin/bower_components/jquery/dist/jquery.min.js')}}"></script>
<!-- Bootstrap 3.3.7 -->
<script src="{{asset('admin/bower_components/bootstrap/dist/js/bootstrap.min.js')}}"></script>
<!-- AdminLTE App -->
<script src="{{asset('admin/dist/js/adminlte.min.js')}}"></script>
<script src="{{asset('js/all.js')}}"></script>
<!-- Optionally, you can add Slimscroll and FastClick plugins.
Both of these plugins are recommended to enhance the
user experience. -->
</body>
</html>
然后运行...
npm run dev
或npm run watch
但是,我仍然遇到相同的错误...
jquery.min.js:2未捕获的错误:[$ injector:modulerr]无法执行 实例化模块管理员,原因是:错误:[$ injector:nomod]模块 “ admin”不可用!您拼错了模块名称,或者 忘记加载了。如果注册模块,请确保指定 依赖项作为第二个参数。