通过$ state.go导航到另一个视图
我正在使用Ionic Framework为移动设备创建单页面应用程序。 我有一个基于标签的配置文件页面结构。 在“主页”视图中,我点击一个链接“编辑配置文件”,它应该通过ProfileManagementController.js导航到editprofile.html。 当我点击它时,没有任何反应,也没有错误显示在控制台中。 只有地址栏中的网址才会更新。
这里是app.js中的路由代码:
.state('editProfile', {
url: '/editProfile',
views: {
'tab-editprofile': {
templateUrl: 'templates/profile/editprofile.html',
controller: 'ProfileManagementController'
}
}
})
在这里它与这个特性相关的ProfileManagementController.js snipper:
$scope.goToEditProfile = function(path)
{
$state.go(path);
}
这是Home标签视图(tab-home.html)的HTMl表单,其中按钮存在以导航到编辑配置文件:
<div>
Name: {{tempUserObject.name}} <br/>
Friends: {{tempUserObject.totalFriends}}<br/>
Mobile: {{tempUserObject.mobile}}<br/>
Username: {{tempUserObject.username}} <br/>
<br/>
<button ng-click="goToEditProfile('editProfile')" class="button">Edit Profile</button>
</div>
这是我最初登录tab-home.html时的URL,点击不起作用的按钮后:
之前:http://127.0.0.1:49259/index.html#/tab/home之后:http://127.0.0.1:49259/index.html#/editProfile
请帮助指导我弄清楚这个链接出了什么问题。 我以前在其他地方使用过$ state.go,并且运行良好。
更新:editprofile.html添加。
<ion-view hide-nav-bar="false" title="Edit Profile">
<ion-content padding="'true'" class="has-header">
<div class="spacer" style="width: 300px; height: 87px;"></div>
<div class="button-bar"></div>
<h2>Edit Profile</h2>
</ion-content>
</ion-view>
使用这个而不是状态改变。
$location.path('/editProfile');
不要忘记在你的控制器功能中注入$ location。
你的app.js中定义了一个名为'path'的状态吗? 如果不是像'editprofile'状态一样使用模板和控制器创建一个名为'path'的状态
所以我解决了上面的问题,修改了app.js中的路由如下:
.state('editprofile', {
url: '/editprofile',
templateUrl: 'templates/profile/editprofile.html',
controller: 'ProfileManagementController'
})
链接地址: http://www.djcxy.com/p/77981.html
上一篇: Navigate to another view via $state.go
下一篇: Angular error: Error: [$injector:unpr] Unknown provider: $stateProvider