我正在开发我的第一个应用程序。它工作得非常好,但现在我遇到了与$ stateParams相关的问题。
我正在开发一款需要登录和注销的应用。并有这种格式的网址: '#/标签/简档/ {{用户id}}'
我有一个显示用户个人资料的标签。它应该从URL中读取ID,并呈现该用户。
如果我使用用户登录,则会正确呈现配置文件。但是当我退出然后与其他用户登录时,它仍会显示第一个用户配置文件。 $ stateProvider变量,它仍然具有先前的值。
我录制了这段简短的视频来解释我的问题。
以下是我的源代码。
这真让我疯狂。我该怎么办?非常感谢!
$stateProvider
// setup an abstract state for the tabs directive
.state('tab', {
url: '/tab',
abstract: true,
templateUrl: 'templates/tabs.html'
})
.state('tab.profile', {
url: '/profile/:userIdInUrl',
views: {
'tab-profile': {
templateUrl: 'templates/tab-profile.html',
controller: 'ProfileCtrl'
}
}
})
这是标签代码。如视频中所示,该值已正确更新:
<!-- Profile Tab -->
<ion-tab title="Profile" icon-off="ion-ios-person-outline" icon-on="ion-person" href="#/tab/profile/{{userId}}">
<ion-nav-view name="tab-profile"></ion-nav-view>
</ion-tab>
这是我的'ProfileCtrl'代码:
.controller('ProfileCtrl', function($http, $scope, $stateParams) {
$scope.$on('$ionicView.enter', function(e) {
console.log('$stateParams:');
console.log($stateParams);
});