0

ich diesen Fehler bin Begegnung:Typerror: Satz ist keine Funktion mit AngularJS

Typeerror: fb.set ist keine Funktion, Angularjs: 13550

während ich versuche, Daten zu senden zu meiner Firebase-Datenbank.

Ich verstehe wirklich nicht, was ich hier vermisse, ich schaute auf die Dokumentation, aber alles scheint gut auszusehen.

var app = angular.module('app', ['firebase']); 

app.controller("mainController", ["$scope", "$firebaseArray", 
    function($scope, $firebaseArray) { 

     var ref = new Firebase("https://burning-torch-4263.firebaseio.com/days"); 
     fb = $firebaseArray(ref); 

    $scope.reset = function() { 
    fb.set({ 
     monday: { 
     name: 'Monday', 
     slots: { 
      0900: { 
      time: '9:00am', 
      booked: false 
      }, 
      0110: { 
      time: '11:00am', 
      booked: false 
      } 
     } 
     }, 
     tuesday: { 
     name: 'Tuesday', 
     slots: { 
      0900: { 
      time: '9:00am', 
      booked: false 
      }, 
      0110: { 
      time: '11:00am', 
      booked: false 
       } 
      } 
      } 
     }); 
    };  

    } 

]); 
+0

haben Sie die Feuerbasis Bibliothek auf Ihrem html importieren? oder hast du die bower install installiert? –

+0

ja, alles ist importiert und Bower installieren bereits ausgeführt ... –

+0

['$ firebaseArray' hat keine' set() 'Methode] (https://www.firebase.com/docs/web/libraries/angular/ api.html # angularfire-firebasearray). Sie suchen wahrscheinlich 'ref.set ({...' –

Antwort

1

Werke für mich:

<!DOCTYPE html> 
<html ng-app='app'> 
<head> 
    <meta name="description" content="AngularFire set data"> 
    <script src="https://cdn.firebase.com/js/client/2.2.6/firebase.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular.min.js"></script> 
    <script src="https://cdn.firebase.com/libs/angularfire/1.1.1/angularfire.min.js"></script> 
    <meta charset="utf-8"> 
    <title>AngularFire set data</title> 
</head> 
<body ng-controller='MainCtrl'> 
    <ol> 
    <li ng-repeat='(id, day) in days'>{{day.name}} - {{id}} 
     <ul> 
     <li ng-repeat='slot in day.slots'>{{slot.time}}</li> 
     </ul> 
    </li> 
    </ol> 
</body> 
</html> 

Und das JavaScript

var app = angular.module('app', ['firebase']); 

app.constant('FB_URL', 'https://stackoverflow.firebaseio.com/36903668'); 
app.controller('MainCtrl', function(FB_URL, $scope, $firebaseArray, $firebaseObject) { 

    var ref = new Firebase(FB_URL+"/days"); 
    var fb = $firebaseArray(ref); 
    $scope.days = fb; 

    ref.set({ 
    monday: { 
     name: 'Monday', 
     slots: { 
     0900: { 
      time: '9:00am', 
      booked: false 
     }, 
     0110: { 
      time: '11:00am', 
      booked: false 
     } 
     } 
    }, 
    tuesday: { 
     name: 'Tuesday', 
     slots: { 
     0900: { 
      time: '9:00am', 
      booked: false 
     }, 
     0110: { 
      time: '11:00am', 
      booked: false 
     } 
     } 
    } 
    }); 
}); 

Link zu jsbin: http://jsbin.com/lofima/edit?html,js,output

+0

Aus irgendeinem Grund funktioniert dein Code, vielleicht ein Tippfehler, wer weiß ... nun vielen Dank :) –

+0

Gern geschehen. Beachten Sie, dass dies auch der bevorzugte Weg ist, anderen das Sehen zu erleichtern, was Sie gerade tun: ein jsfiddle/jsbin zum Klicken und der (minimale) Code in der Frage. :-) Wenn meine Antwort nützlich war, klicke auf den Upvote-Button links davon. Wenn es Ihre Frage beantwortet hat, klicken Sie auf das Häkchen, um es zu akzeptieren. Auf diese Weise wissen andere, dass Ihnen (ausreichend) geholfen wurde. –

Verwandte Themen