javascript - 使用 angular-google-maps 指令在 "grunt serve"期间有效,但在默认 grunt 任务期间无效

标签 javascript angularjs angular-google-maps

我正在使用 Yeoman AngularJS 生成器构建 map 应用程序。我已经使用 Bower 安装了 Angular-Google-Maps。如果我使用“gruntserve”来测试应用程序,它工作正常并且 map 加载正确。如果我只是发出“grunt”来构建应用程序,它会失败并显示“模块‘google-maps’不可用!您要么拼写错误了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。”

我不太确定为什么它不适用于默认任务。我运行了“grunt BowerInstall”并确认index.html确实有对 angular-google-maps 的正确引用。我也会在此之前加载 Google Maps API。

这是我的 app.js

angular
  .module('webappApp', [
    'ngCookies',
    'ngResource',
    'ngSanitize',
    'ngRoute',
    'google-maps'
  ])
  .config(function ($routeProvider) {
    $routeProvider
      .when('/', {
        templateUrl: 'views/main.html',
        controller: 'MainCtrl'
      })
      .otherwise({
        redirectTo: '/'
      });
  });

最佳答案

我设法解决了这个问题。该错误是在 Karma 测试期间发生的,因为它没有找到 Google Maps API,也没有找到 angular-google-maps 源。因此,我更新了 karma.conf.js 以从 Bower_components 引入 Google Maps API 和 angular-google-maps 源。

files: [
  'http://maps.googleapis.com/maps/api/js?sensor=false',
  'app/bower_components/angular/angular.js',
  'app/bower_components/angular-mocks/angular-mocks.js',
  'app/bower_components/angular-resource/angular-resource.js',
  'app/bower_components/angular-cookies/angular-cookies.js',
  'app/bower_components/angular-sanitize/angular-sanitize.js',
  'app/bower_components/angular-route/angular-route.js',
  'app/bower_components/lodash/dist/lodash.compat.js',
  'app/bower_components/angular-google-maps/dist/angular-google-maps.js',
  'app/scripts/*.js',
  'app/scripts/**/*.js',
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],

关于javascript - 使用 angular-google-maps 指令在 "grunt serve"期间有效,但在默认 grunt 任务期间无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24148797/

相关文章:

javascript - 如何从 JavaScript 触发 ASP.NET Core 客户端验证

javascript - 使用 javascript 更新验证时的 html css 代码

javascript - 数据仅显示输入是否被触摸 - AngularJs

angular - 如何最初在 Angular 谷歌地图中缩放 map

javascript - Foreach 验证基于 foreach 列表中的最后一个输入进行验证

javascript - JS/nodejs 中变量的作用域

javascript - ng-grid cellTemplate 不适用于包含的 CUSTOM_FILTERS

javascript - 带有工具提示值的图表

javascript - 将 Angular-Google-Maps 添加到 Mean.js

javascript - 使用 angular-google-maps 指令与异步加载的 <markers> 不起作用