Angular - 模块不可用

Angular - Module not available

我正在使用 mean.js 样板。我想在我的客户端中包含 angular-stripe。为此,我安装了 angular-stripe,它在 node_modules.

下可用

现在我想在我的代码中添加如下

(function () {
'use strict';

angular
  .module('myApp', [
    'angular-stripe'
  ])
  .config(function (stripeProvider) {
    stripeProvider.setPublishableKey('my_key')
  })

      PaymentController.$inject = ['$scope', '$state', 'Authentication', 'Socket', 'stripe'];

      function PaymentController($scope, $state, Authentication, Socket, stripe) {
        var vm = this; 
    }
());

它抛出以下错误

Module 'angular-stripe' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

问题是 angular-stripe 插件在声明 angular 模块时不包含在内。

使用来自 node_modules 的 js 模块时,请在模块声明中改用全局 require() 方法

angular.module('myApp', [
  require('angular-stripe')
]);

另一个解决方案是以 "standard" 方式包含文件 <script src="...

关于 require 方法的好博客 post here

如果您使用的是 MeanJs 样板文件,则必须在 client - libclient-css 中的 config/assets/default.js 添加依赖项(如果依赖项具有 .css 文件。

module.exports = {
  client: {
    lib: {
      css: [
        // bower:css
        'public/lib/bootstrap/dist/css/bootstrap.css',
        'public/lib/bootstrap/dist/css/bootstrap-theme.css',
        'public/lib/angular-ui-notification/dist/angular-ui-notification.css'
        // endbower
      ],
      js: [
        // bower:js
        'node_modules/angular-stripe/src/index.js',
        'public/lib/angular/angular.js',
        'public/lib/angular-animate/angular-animate.js',
        'public/lib/angular-bootstrap/ui-bootstrap-tpls.js',
        'public/lib/ng-file-upload/ng-file-upload.js',
        'public/lib/angular-messages/angular-messages.js',
        'public/lib/angular-mocks/angular-mocks.js',
        'public/lib/angular-resource/angular-resource.js',
        'public/lib/angular-ui-notification/dist/angular-ui-notification.js',
        'public/lib/angular-ui-router/release/angular-ui-router.js',
        'public/lib/owasp-password-strength-test/owasp-password-strength-test.js',
        // endbower
      ], // rest of the code..

MeanJs 强烈建议使用 bower 作为您的前端依赖项。 更多信息:MeanJS docs