首页 > 解决方案 > AngularJS 组件不会实例化,“‘模块’不是函数”

问题描述

我被要求在 Angular 1 中做一个项目,我一直在做噩梦,只是试图让页面从bundle.js. 我目前有一个错误

[$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:modulerr] Failed to instantiate module {"_invokeQueue": 
[],"_configBlocks":[],"_runBlocks":[],"name":"approveComponent"} due to:
Error: [ng:areq] Argument 'module' is not a function, got Object

但我拥有的唯一approveComponent 本质上是一个空白占位符-

从“角度”导入角度;

常量批准 = angular.module('approveComponent', []);

出口默认批准;

我该怎么做才能让它真正运行?

我正在使用 Webpack 4 来捆绑所有内容。(webpack 没有错误。)

标签: angularjs

解决方案


我之前看到过这个错误。您需要在依赖项中传递模块名称而不是模块

ngModule = angular.module('webpack', [
    require('./webpack/photocrop/client')//this is a object
])

您可以简单地要求文件并按名称注入 像这样

var firstModule = require('./webpack/myapp/client')

ngModule = angular.module('webpack', [
        'firstModule'//this is should work
])
firstModule(ngModule)

示例 GitHub 存储库


推荐阅读