将 angular-material 添加到 mean.io 应用

Add angular-material to mean.io app

我正在尝试添加 angular-material to a mean.io 应用程序。

我已经在我的自定义包中使用 bower 安装 angular-material,现在我有一个 .../public/assets/lib/angular-material 文件夹。

到目前为止一切顺利。现在我想在我的自定义 mean.io 模块中使用它,并且根据他们的文档我添加了

MyPackage.angularDependencies(['ngMaterial']);

在我的 app.js 文件中。

我还汇总了 angular-material.css 和 angular-material.js(不确定是否需要)。

但是,我收到以下错误:

Failed to instantiate module mean due to:
Error: [$injector:modulerr]     http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=m...)
at Error (native)
at http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:6:416
at http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:38:391
at n (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:7:333)
at g (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:37:488)
at http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:38:134
at n (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:7:333)
at g (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:37:488)
at eb (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:41:249)
at c (http://127.0.0.1:3001/bower_components/angular/angular.min.js?v=90fb950dbc3e9296755d9cc23a211744:19:463

我假设 mean 没有找到 angular-material 模块,我需要在某处指定它的路径。但是我不知道在哪里。

我有同样的问题,发生这种情况是因为 angular 无法通过 material 解决一些必需的库,我没有深入调查,但我找到了替代解决方案如下所述:

导航到项目根目录,然后使用 bower 安装 angular material:

$ bower install angular-material --save

然后,在项目根目录中,你会找到 /config/assets.json 文件,其中包含 AngularJS,现在你添加 angular material 库,如下所示:

{
  "core": {
    "css": {
      "bower_components/build/css/dist.min.css": [
        "bower_components/angular/angular-csp.css",
  ->    "bower_components/angular-material/angular-material.css",
        "bower_components/angular-ui-select/dist/select.min.css"
      ]
    },
    "js": {
      "bower_components/build/js/dist.min.js": [
        "bower_components/jquery/dist/jquery.min.js",
        "bower_components/angular/angular.min.js",
    ->  "bower_components/angular-aria/angular-aria.js",
    ->  "bower_components/angular-animate/angular-animate.js",
    ->  "bower_components/angular-material/angular-material.js",
        "bower_components/angular-mocks/angular-mocks.js",
        "bower_components/angular-cookies/angular-cookies.min.js",
        "bower_components/angular-resource/angular-resource.min.js",
        "bower_components/angular-sanitize/angular-sanitize.min.js",
        "bower_components/angular-ui-router/release/angular-ui-router.min.js",
        "bower_components/angular-jwt/dist/angular-jwt.min.js",
        "bower_components/angular-bootstrap/ui-bootstrap-tpls.js",
        "bower_components/angular-ui-select/dist/select.min.js",
        "bower_components/web-bootstrap/index.js"
      ]
    }
  }
}

我知道mean.io说不要改变核心包,但我没有找到其他方法让它工作,如果有人有更好的解决方案,请告诉我们。