![](/img/trans.png)
[英]Angular UI-Router cannot resolve child state (with dynamic URL param) from its parent state
[英]angular js cannot resolve state from state
我試圖在一個名為single_post的狀態中創建一個子狀態memstate,以便從single_post控制器使用
$state.go(single_post({id:somename});
但我每次遇到以下錯誤時都會收到錯誤消息:“錯誤:無法從狀態'single_post'解析'single_post.memstate({id:somename})'”
這是app.js代碼
var app = angular.module('app',['ui.router','ui.router.stateHelper','ngCookies']);
app.config(function($stateProvider){
index = {
name : 'index',
url : "",
views : {
'slider' :{
templateUrl : 'template/slider.html',
controller : 'slider_ctrl'
},
'content' : {
templateUrl : 'template/posts-area.html',
controller : 'posts_ctrl'
}
}
};
single_post = {
name : 'single_post',
url : '/t/{id:int}',
views : {
'content' : {
templateUrl : 'template/single-post.html',
controller : 'single_post_ctrl'
},
'mem_handle' :{
templateUrl :'template/lginform.html',
controller : 'login_con'
}
}
};
loginstate = {
name : 'single_post.loginstate',
url : '/login',
views : {
'mem_handle' :{
templateUrl :'template/lginform.html',
controller : 'login_con'
}
}
};
regstate = {
name : 'single_post.regstate',
url : '/register',
views :{
'mem_handle' :{
templateUrl : 'template/regform.html',
controller : 'reg_con'
}
}
};
memstate = {
name : 'single_post.memstate',
url : '/m/{id:string}/',
views : {
'content' : {
template : 'member.html',
controller : 'mem_controller'
}
}
}
$stateProvider.state('index',index);
$stateProvider.state('single_post',single_post);
$stateProvider.state('single_post.regstate',regstate);
$stateProvider.state('single_post.loginstate',loginstate);
$stateProvider.state('single_post.memstate',memstate);
});
謝謝大家,問題在於使用$ state將參數傳遞給狀態。.我發現正確的方法是
$state.go('single_post.memstate',{id:$cookies.get('an')});
通過將參數作為對象傳遞給函數$ state.go();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.