2015-06-24 2 views
16

Это очень неприятно, я использую приложение сгенерированное mean.js yeoman и не могу заставить себя казаться угловатым, материал вверх и вниз. Я прочитал еще один вопрос stackoverflow о проблеме Angularjs with material design Failed to instantiate module ngMaterial. Поэтому я обновил файл bower.json и запустил bower update и bower install. Он все еще не работает. Во время обновления bower bower дал мне это сообщение Unable to find a suitable version for angular, please choose one:, но я всегда выбирал Угловую версию 1.3.0 или выше.
Heres копия моего bower.json:
Установка углового материала «Не удалось создать экземпляр модуля ngMaterial», хотя я использую угловую версию 1.3.0

{ 
    "name": "colign", 
    "version": "0.0.1", 
    "description": "Full-Stack JavaScript with MongoDB, Express, AngularJS, and Node.js", 
    "dependencies": { 
    "bootstrap": "~3", 
    "angular": "~1.3", 
    "angular-resource": "~1.3", 
    "angular-mocks": "~1.3", 
    "angular-bootstrap": "~0.11.2", 
    "angular-ui-utils": "~0.1.1", 
    "angular-ui-router": "~0.2.11", 
    "angular-material": "~0.10.0" 
    } 
} 

Heres сообщение консоли ошибка: Ошибка: [$ Инжектор: modulerr] Не удалось создать экземпляр модуля ngMaterial из-за: Ошибка: [$ инжектором: nomod ] Модуль «ngMaterial» недоступен! Вы либо ошибочно написали имя модуля, либо забыли загрузить его. Если регистрация модуля гарантирует, что вы укажете зависимости в качестве второго аргумента.

Угловые config.js файл:

'use strict'; 

// Init the application configuration module for AngularJS application 
var ApplicationConfiguration = (function() { 
    // Init module configuration options 
    var applicationModuleName = 'colign'; 
    var applicationModuleVendorDependencies = ['ngResource', 'ui.router', 'ui.bootstrap', 'ui.utils', 'ngMaterial']; 

    // Add a new vertical module 
    var registerModule = function(moduleName, dependencies) { 
     // Create angular module 
     angular.module(moduleName, dependencies || []); 

     // Add the module to the AngularJS configuration file 
     angular.module(applicationModuleName).requires.push(moduleName); 
    }; 

    return { 
     applicationModuleName: applicationModuleName, 
     applicationModuleVendorDependencies: applicationModuleVendorDependencies, 
     registerModule: registerModule 
    }; 
})(); 

Заранее спасибо за любую помощь!

+0

Вы включили «ngMaterial» в свою зависимость от модуля? – arman1991

+1

он конечно сделал по причине сообщение об ошибке! –

+0

Можете ли вы предоставить свои теги скриптов html? Возможно, вы просто забыли добавить необходимые теги скриптов. –

ответ

33

Угловой материал, ngMaterial, имеет зависимость от ngAria и ngAnimate. Вам нужно будет загрузить их.

angular.module('ngMaterial', ["ng","ngAnimate","ngAria", ...other material sub modules 

Вы можете скачать его с angular aria и angular animate. Используйте правильную версию, основанную на вашей угловой версии.

Также просто добавить сценарии в проект недостаточно, вам также необходимо загрузить их в свой html. Также загрузите их до ng-material сценария.

+1

Проблема решена! –

+2

На самом деле вам не нужно добавлять зависимости для угловой-арии и угловато-анимации в вашем файле bower, так как они зависят от углового материала, а беседка будет определять его –

+0

отличная помощь. – ritesh

Смежные вопросы