【问题标题】:ag-grid: Failed to instantiate module appag-grid:无法实例化模块应用程序
【发布时间】:2016-11-16 22:08:44
【问题描述】:

我正在将 ag-grid 添加到使用 angular-fullstack yeoman 生成器创建的 Angular 应用程序中。它使用 ES6,所以我必须在我的 app.js 中使用“import”语法 我用 npm 安装:

npm install ag-grid --save

然后在 app.js 中添加一个导入行,如入门中所述:

从 'ag-grid/main' 导入 {Grid};

然后我将新的“网格”添加到我的模块列表中,就像这样

angular.module('app', [ngCookies, ngResource, ngSanitize, uiRouter, uiBootstrap, _Auth, account, 管理,导航栏,页脚,主,网格 ])

然后我的 chrome 控制台出现错误:

angular.js:68Uncaught Error: [$injector:modulerr] 无法实例化模块应用程序,原因是: 错误:[$injector:modulerr] 无法实例化模块函数 Grid(eGridDiv, gridOptions, params) 由于: 错误:[$injector:strictdi] 网格未使用显式注释,无法在严格模式下调用 http://errors.angularjs.org/1.5.8/$i...di?p0=网格 在http://localhost:3000/vendor.bundle.js:194:13 在 Function.annotate [as $$annotate] (http://localhost:3000/vendor.bundle.js:4078:18) 在 injectionArgs (http://localhost:3000/vendor.bundle.js:4805:37) 在 Object.invoke (http://localhost:3000/vendor.bundle.js:4836:19)

有人知道如何解决这个问题吗? 谢谢。

【问题讨论】:

    标签: angularjs ag-grid angular-fullstack


    【解决方案1】:

    虽然我不确定这是否真的有帮助,但试试这个:

    var module = angular.module("app", ["agGrid",...the rest of your dependencies]);
    

    【讨论】:

    • 感谢您的回答。这里的问题是它是 ES6 并且语法有点不同。首先,您将包导入到您想要的任何名称,然后将其包含在您的模块声明中。我的猜测是名称并不重要,它就像一个var。重要的是我们进口的东西。入门指南中的说明是导入 ag-grid/main。我还尝试了 ag-grid,aggrid,但都没有运气。角度版本是 1.5.8 。感谢您的任何建议。
    【解决方案2】:

    我觉得你需要打电话

    import {initialiseAgGridWithAngular1} from 'ag-grid/main';
    initialiseAgGridWithAngular1();
    

    【讨论】:

    • 应该和你把import {Grid} from 'ag-grid/main';放在同一个地方
    猜你喜欢
    • 2017-04-09
    • 2020-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-24
    • 2011-08-17
    • 2013-07-31
    相关资源
    最近更新 更多