AngularFire & Ionic - TypeError: Невозможно прочитать свойство «push» из неопределенного

0

Я использую Ionic и AngularFire для создания своего приложения, но у меня проблема:

Мои запросы не записываются в базу данных, когда я нажимаю кнопку "Отправить", вызывается следующая ошибка консоли: TypeError: Невозможно прочитать свойство "push" undefined. Я не знаю, что делать... Помогите мне, пожалуйста. Я в вашем распоряжении для получения дополнительной информации.

Вот мой html-код:

<form ng-submit="AddEvent()">
  <label class="item item-input item-stacked-label">
    <span class="input-label"><i class="fa fa-pencil"></i> Nom de l'événement</span>
    <input type="text" ng-model="events.nameid">
  </label>
  <label class="item item-input item-stacked-label">
    <span class="input-label"><i class="icon ion-ios-information"></i> Description</span>
    <br><textarea ng-model="events.descriptionid"></textarea>
  </label>
  <label class="item item-input item-stacked-label">
    <span class="input-label"><i class="fa fa-location-arrow"></i> Adresse</span>
    <input type="text" ng-model="events.addressid">
  </label>
<button class="button" type="submit" id="success-btn-create"><i class="fa fa-arrow-right"></i></button></form>

Мой контроллер JS:

myApp.controller('Step1Ctrl', ['$scope', 'Events', 'Auth', '$rootScope', '$state', function($scope, $Events, Auth, $rootScope, $state) {

  $scope.events = Events;
  var Events = {fbRef: "https://myApp.firebaseio.com/Events"};


  $scope.AddEvent = function() {
  var eventsRef = eventsRef.push();         
      $scope.events.push({
      "nameid": nameid,
      "descriptionid": descriptionid,
      "addressid": addressid,

    });

    }

  $scope.auth = Auth;

    // any time auth status updates, add the user data to scope
    $scope.auth.$onAuth(function(authData) {
      $scope.authData = authData;
    });

    $scope.create = function() {
    $state.go('tabstep1');
};
$scope.close = function() { 
     $state.go('tabdash'); 
};
}])

Моя служба JS:

angular.module('starter.services', ['ngCordova','firebase'])

myApp.factory("Events", ["$firebaseArray", function($firebaseArray) {
  var eventsRef = new Firebase("https://myApp.firebaseio.com/Events");
  return $firebaseArray(eventsRef);
}]);
Теги:
firebase
angularfire
ionic

1 ответ

0

Ваши переменные eventsRef не определены при вызове eventsRef.push(). Также вы ничего не делаете в вызове push().

Пытаться:

var eventsRef = [];
eventsRef.push(somethingToAddToEventsRef);
  • 0
    Спасибо вам. Где в коде я могу поставить это?
  • 0
    Ну, это все зависит. Если бы я знал, что вы пытаетесь push() в массив, у меня было бы лучшее представление о том, где сделать вызов.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню