मैं एक कोणीय परियोजना पर काम कर रहा हूं और फायरबेस का उपयोग कर रहा हूं, और यह ReferenceError: Firebase is not defined
के साथ त्रुटि कर रहा है, लेकिन मुझे पता नहीं चल रहा है कि क्यों।फायरबेस को परिभाषित नहीं किया गया है?
मेरी index.html
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>My Contacts App</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="bower_components/foundation/css/foundation.css">
<link rel="stylesheet" href="app.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="large-12 columns">
<h1>myContacts</h1>
<hr>
</div>
</div>
<div ng-view></div>
</div>
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/firebase/firebase.js"></script>
<script src="bower_components/angularfire/dist/angularfire.js"></script>
<script src="bower_components/foundation/js/foundation.js"></script>
<script src="app.js"></script>
<script src="contacts/contacts.js"></script>
</body>
</html>
मेरी contact.js
'use strict';
angular.module('myContacts.contacts', ['ngRoute', 'firebase'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/contacts', {
templateUrl: 'contacts/contacts.html',
controller: 'ContactsCtrl'
});
}])
.controller('ContactsCtrl', ['$scope', '$firebaseArray', function($scope, $firebaseArray) {
var ref = new Firebase('https://<my_project_name>.firebaseio.com/contacts');
$scope.contacts = $firebaseArray(ref);
console.log($scope.contacts);
}]);
मेरी app.js
'use strict';
angular.module('myContacts', [
'ngRoute',
'firebase',
'myContacts.contacts'
]).
config(['$routeProvider', function($routeProvider) {
$routeProvider.otherwise({redirectTo: '/contacts'});
}]);
और मेरे package.json है
{
"name": "angular-seed",
"private": true,
"version": "0.0.0",
"description": "A starter project for AngularJS",
"repository": "https://github.com/angular/angular-seed",
"license": "MIT",
"devDependencies": {
"bower": "^1.7.7",
"http-server": "^0.9.0",
"jasmine-core": "^2.4.1",
"karma": "^0.13.22",
"karma-chrome-launcher": "^0.2.3",
"karma-firefox-launcher": "^0.1.7",
"karma-jasmine": "^0.3.8",
"karma-junit-reporter": "^0.4.1",
"protractor": "^3.2.2",
"shelljs": "^0.6.0",
"firebase": "*"
},
"scripts": {
"postinstall": "bower install",
"prestart": "npm install",
"start": "http-server -a localhost -p 8000 -c-1 ./app",
"pretest": "npm install",
"test": "karma start karma.conf.js",
"test-single-run": "karma start karma.conf.js --single-run",
"preupdate-webdriver": "npm install",
"update-webdriver": "webdriver-manager update",
"preprotractor": "npm run update-webdriver",
"protractor": "protractor e2e-tests/protractor.conf.js",
"update-index-async": "node -e \"require('shelljs/global'); sed('-i', /\\/\\/@@[email protected]@[\\s\\S]*\\/\\/@@[email protected]@/, '//@@[email protected]@\\n' + sed(/sourceMappingURL=angular-loader.min.js.map/,'sourceMappingURL=bower_components/angular-loader/angular-loader.min.js.map','app/bower_components/angular-loader/angular-loader.min.js') + '\\n//@@[email protected]@', 'app/index-async.html');\""
}
}
पैकेज.जेसन फ़ाइल में I firebase "*" असाइन किया गया, मुझे नहीं पता कि यह ऐसा कर सकता है या नहीं? बाकी सब कुछ अच्छा लग रहा है ...
इस bower.json फ़ाइल
{
"name": "angular-seed",
"description": "A starter project for AngularJS",
"version": "0.0.0",
"homepage": "https://github.com/angular/angular-seed",
"license": "MIT",
"private": true,
"dependencies": {
"angular": "~1.5.0",
"angular-route": "~1.5.0",
"angular-loader": "~1.5.0",
"angular-mocks": "~1.5.0",
"html5-boilerplate": "^5.3.0"
}
}
कि क्या वहाँ Firebase देने के लिए हो सकता है है?
क्या कंसोल पर कोई अन्य समस्या है? विशेष रूप से, बोवर घटकों से 'firebase.js' लोड किया था? क्या आप कंसोल से 'फायरबेस' ऑब्जेक्ट तक पहुंच सकते हैं? ऐसा लगता है कि आप अपने निर्भरता प्रबंधक के रूप में 'बॉवर' का उपयोग कर रहे हैं और उसे 'बॉवर इंस्टॉल' चलाने की आवश्यकता हो सकती है। दूसरा विकल्प 'npm' (और' bower_components' से 'node_modules') पर जाना है और अपने दिए गए 'package.json' के साथ' npm install' चलाएं। –
कोई अन्य त्रुटि नहीं है, और कंसोल से फ़ायरबेस का उपयोग किया जा सकता है, मुझे नहीं पता कि समस्या क्या हो सकती है ... – sanja
क्या आपके 'index.html' में कुछ भी है जिसमें 'contact.js' फ़ाइल _before_' firebase शामिल हो सकती है .js' लोड हो गया है? इसके अलावा, हालांकि आप 'फायरबेस' ऑब्जेक्ट तक पहुंच सकते हैं, क्या आप कंसोल पर 'फायरबेस' कन्स्ट्रक्टर तक भी पहुंच सकते हैं? –