簡體   English   中英

角度js無法從狀態解析狀態

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM