我用一个视图在ASP.NET Core 2.0上创建了简单的MVC项目,在该视图中我开始了所有angularJS工作。我的服务有问题。不论是否在app.run上注入服务,我总是有错误。
var app = angular.module('myApp', ['ui.router']);
app.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/home');
$stateProvider
.state('home', {
url: '/home',
templateUrl: 'app/pages/home.html',
authenticate: false
});
});
app.run(['$rootScope', '$state', 'TestServices',
function ($rootScope, $state, TestServices) {
$rootScope.$on('$stateChangeStart',
function (event, toState, toParams) {
console.log(toState.authenticate);
//need run service method here!
}
);
}
]);
我的服务
var app = angular.module('myApp', []);
app.service('TestServices', function () {
this.cal = function() {
console.log("Heloo")
}
});
我不知道这是什么问题。我尝试了evryhing。我无法从服务中调用该方法。我随处注入它,但没有结果。我无法从我的服务中调用任何方法!
索引页cshtml
@{
Layout = null;
}
<head>
<script type="text/javascript"
src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.9/angular.js">
</script>
<script src="~/app/pages/TaxFactory.js"></script>
<script type="text/javascript"
src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-
router/0.3.1/angular-ui-router.js"></script>
<script src="~/app/pages/app.js"></script>
</head>
<body ng-app="myApp">
<div ui-view></div>
</body>
如果需要,请在此处找到项目的链接。 https://drive.google.com/open?id=1Dg8zcGEySUU8UbsL339B-gZgr7QrsNDF 我认为它与ui-router和cshtml格式(例如起始页)有关吗?
答案 0 :(得分:0)
您正在覆盖app.js中的应用程序变量。因此,TestService不再可用。
避免这种情况的一种方法,将TaxFactory.js更改为;
Enter
并在app.js中的var taxFactory = function () {
this.cal = function () {
console.log("Heloo");
};
};
之前添加此行;
app.run