【发布时间】:2017-04-07 01:34:37
【问题描述】:
ui-router 有以下嵌套状态
index.html
<body ng-app="testApp">
<div ui-view></div>
<body>
view.homepage.html
<div id="header" ng-controller="controllerHome">
<div id="middle">
<div ui-view>
<input type="text" ng-model="check">
<button ng-click="test()">Click</button>
</div>
</div
</div>
这是我的状态定义js文件
var testApp = angular.module('testApp',['ui.router']);
testApp.config(function($stateProvider, $urlRouterProvider){
$urlRouterProvider.
otherwise('/');
$stateProvider
.state('home',
{
url:'/',
templateUrl : './templates/view.homepage.html',
controller : 'controllerHome',
resolve : {
userSession : function($http){
return $http({
method : "POST",
url : '/getSession'
});
}
}
})
})
homeController.js
testApp.controller('controllerHome',function($scope,$http,userSession){
$scope.check = "";
$scope.test = function(){
console.log($scope.check);
}
})
当我将解析 I 放入状态定义中时,我收到以下错误 Error: $injector:unpr Unknown Provider.
所以我尝试删除 ng-controller 指令,但是当我从视图中删除 ng-controller 指令时,单击按钮后,controllerHome 中 $scope.check 的值是空白的。
我想从 html 视图中删除 ng-controller 指令并将解析放入状态定义中。
【问题讨论】:
-
不要将子元素添加到 ui-view
标签: angularjs angular-ui-router