UI-роутер с материально-угловой эмиссией
Я хочу использовать ui-router и angular-materialize вместе, но когда я хочу добавить модуль angular materialize, он показывает мне эту ошибку в консоли:
Ошибка: [$ инжектор: modulerr]...
script.js
var routerApp = angular.module("routerApp", ["ui.router"], ['ui.materialize']);
routerApp.controller('mainCtrl', ["$scope", function ($scope) {
$scope.select = {
value: "Option1",
choices: ["Option1", "I'm an option", "This is materialize", "No, this is Patrick."]
};
routerApp.config(
["$stateProvider", "$urlRouterProvider",
function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/template1");
$stateProvider
.state("template1", {
url: "/template1",
templateUrl: "template1.html",
controller: "tmp1Controller"
})
.state("template2", {
url: "/template2",
templateUrl: "template2.html",
controller: "tmp2Controller"
});
}
]);
routerApp.controller("mainCtrl", ["$scope",
function ($scope) {
}
]);
routerApp.controller("tmp1Controller", ["$scope",
function ($scope) {
}
]);
routerApp.controller("tmp2Controller", ["$scope",
function ($scope) {
}
]);
Пожалуйста, покажи мне, в чем моя ошибка. Вот мой код в Plunker
1 ответ
Решение
Проблема связана с неправильным синтаксисом, который вы используете в определении модуля. Так должно быть
var routerApp = angular.module("routerApp", ["ui.router", "ui.materialize"]);
Это означает, что зависимости для модулей указываются как элементы массива в качестве второго аргумента для определения модуля, а не как разные массивы, т.е. не как ["ui.router"], ['ui.materialize']
но, как ["ui.router", "ui.materialize"]