2017-02-21 32 views
0

$ mdToast.simple не является функцией

Codepin

$scope.showToast = function() { 
var pinTo = $scope.getToastPosition(); 
    $mdToast.show(
    $mdToast.simple() 
     .textContent('Saved!') 
     .position(pinTo) 
     .hideDelay(2000) 
    ); 
}; 

Положить большую часть моего кода здесь, как я мог, по-прежнему та же проблема .. это порядок вещей или версию? Я переделал и пробовал много вещей, но все равно получаю ту же ошибку. Проверял этот сайт и проблемы с git для подобных исправлений, но похоже, что OP никогда не возвращается с тем, что работает.

Похоже, что он пытается получить функцию от углового.js, а не от углового материала. Js?

Спасибо всем

затруднительного положения

Мой код:

var app = angular.module('app', ['firebase', 'ngMaterial', 'ngRoute']); 
app.controller('MainCtrl', ['$scope', '$rootScope', 
function($scope, $mdToast, $firebaseObject, $rootScope) { 

Рабочий код:

var app = angular.module('app', ['firebase', 'ngMaterial', 'ngRoute']); 
app.controller('MainCtrl', ['$scope', '$mdToast', '$rootScope', 
function($scope, $mdToast, $firebaseObject, $rootScope) { 
+0

Вы пытались добавить' $ mdToast' как зависимость от контроллера? 'app.controller ('MainCtrl', ['$ scope', '$ mdToast', '$ firebaseObject', '$ rootScope', function ($ scope, $ mdToast, $ firebaseObject, $ rootScope)' –

+0

@ AlexSzabó yes это было проблемой, это не в их документах, как это на демо-версиях Angular Material:/Спасибо за ответ –

ответ

1

Проблема была вам не хватает ` '$ mdToast ',' $ firebas EObject», в инъекции в зависимости

app.controller('MainCtrl', ['$scope', '$mdToast', '$firebaseObject', '$rootScope', 
    function($scope, $mdToast, $firebaseObject, $rootScope) { 

WORKING CODEPEN

+0

Uggh спасибо. Я понимаю, что вы имеете в виду, и теперь это работает, но почему это не так? docs? [docs] (https://material.angularjs.org/latest/demo/toast) они только помещают его как параметр функции 'angular.module (' toastDemo1 ', [' ngMaterial ']) .controller ('AppCtrl', функция ($ scope, $ mdToast) {' –

+0

находится в угловых документах, читайте об инъекции зависимостей. Отметьте как ответ, если он помог – Sajeetharan

+0

Вы видите это в вышеупомянутых документах, с которыми я связан? Под JS они не помещают его в оба пятна. Также в вашем кодепине я должен был добавить его 'app.controller (' MainCtrl ', [' $ scope ', ***' $ mdToast '***,' $ rootScope ', function ($ scope, $ mdToast, $ firebaseObject, $ rootScope) {' если вы хотите обновить это для других. Не могу поверить, что я потратил столько времени на простое решение Lol –