私は角度シード、EcmaScript 6、およびnode.js Webサーバーに基づいて、AngularJS 1.5.4でデモアプリケーションを開発しています。角度1.5.4サービスが未定義
ここで説明したようにコンポーネントルータを使用しています:https://docs.angularjs.org/guide/component-routerサービスからコンポーネントからコールされたときにエラーが発生します。
エラーは以下
etsy.controller.es6:17 Uncaught ReferenceError: EtsyService is not defined
では、関連するコード
index.htmlを
<script src="/bower_components/angular/angular.js"></script>
<script src="/bower_components/bower-angular-router/angular1/angular_1_router.js"></script>
<script src="/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"></script>
<script src="/app.js"></script>
<script src="/components/core/constants.es6"></script>
<script src="/components/etsy/etsy.service.es6"></script>
<script src="/components/etsy/etsy.controller.es6"></script>
etsy.service.es6
(function() {
'use strict'
// variables here ...
class EtsyService {
constructor($http) {
_http.set(this, $http);
}
// methods here ...
static etsyServiceFactory($http) {
return new EtsyService($http);
}
}
angular
.module('myApp.etsy')
.factory('EtsyService', EtsyService.etsyServiceFactory);
})();
etsy.controller.es6あります
(function() {
'use strict';
class EtsyController {
constructor($scope) {
$scope.message = 'Hi from the $scope';
}
}
angular
.module('myApp.etsy', [])
.service('etsyService', EtsyService)
.component('etsy', {
templateUrl: 'components/etsy/etsy.html',
controller: EtsyController
});
})();
私はしばらくの間これを検索していましたが、私が間違っていることを理解できません。何か案が?あなたが生命維持以内にあなたetsy.controller.es6ファイルにEtsyServiceための関数を定義する必要が
おかげ
([]、 'myApp.etsy') '.moduleを削除します'コントローラから、基本的にあなたのモジュールを再初期化しています –
私は@PankajParkarを試しましたが、私は同じエラーを受け取ります – Davide
'etsy.controller.es6'の中になぜ' EtsyService'を作成したのか分かりますか? service.es6' –