AngularJS服务破解控制器

时间:2017-08-21 19:56:44

标签: javascript angularjs frontend

我正在尝试在我的Angular v1.6.4应用上实现一些服务。但是,当我在index.html中导入服务时,我收到此错误my error

这是我服务的内容

angular.module('myApp', [])
.service('SessionService', function() {
    $this.get = function () {
         return true;
    }
 });

我甚至没有在我的应用中使用它。只需像

一样导入它
<script src="path/to/SessionService.js"></script>

已经出错了

从家庭控制器开始,我实现了这样:

angular.module('myApp', [])
.controller('home', ['$scope', function($scope) {

}]);

我称之为

<header class="navbar" ng-controller="home"></header>

我还确保在index.html导入家庭控制器。

我无法得到我错过的东西。请问你能帮帮我吗 ? 在此先感谢!!!

2 个答案:

答案 0 :(得分:0)

angular.module('myApp', [])表示您正在创建模块myApp,而您正在执行两次。

通过传递第二个参数(angular.module('myApp', []):依赖模块数组)使用[]创建模块,并在下次引用模块时使用

angular.module('myApp') //这将返回对现有模块myApp

的引用

和btw,服务内部this而不是$this

答案 1 :(得分:0)

更改服务文件中的第一行

angular.module('myApp', [])
.service('SessionService', function() {
    $this.get = function () {
         return true;
    }
 });

应该是

angular.module('myApp')
.service('SessionService', function() {
    $this.get = function () {
         return true;
    }
 });

没有[]

在angular.module中使用方括号时,重新定义新模块。没有您访问现有模块