国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

javascript - 為什么我無法通過$stateParams在父子State之間傳遞參數?跟State之間的父子關系有關嗎?

瀏覽:137日期:2024-03-07 18:45:39

問題描述

路由設置(兩個State之間有父子關系):

.state('tab.my-profile', { url: '/my/profile', views: { 'tab-my': { templateUrl: 'templates/tab-my-profile.html', controller: 'MyProfileCtrl' } }}) .state('tab.my-profile-mobileinput', { url: '/my/profile/mobileinput', views: { 'tab-my': {params: {'mobile': null}templateUrl: 'templates/util-mobile-input.html',controller: 'MobileInputCtrl', } } })

2.父State的控制器中的代碼:

.controller('MyProfileCtrl', function ($scope, $state) { $scope.goToMobileInput = function () { $state.go('tab.my-profile-mobileinput', {'mobile': '123456'}) };})

3.子State的控制器中的代碼:

.controller('MobileInputCtrl', function ($scope, $stateParams) { alert($stateParams.mobile); // undefined})

能夠跳轉到子State,但在子State的控制器中無法接收到參數(訪問參數時得到的結果是undefined,而非'123456')。看了網上資料這么寫應該無誤,是跟State之間的父子關系有關嗎?

問題解答

回答1:

你的router定義的有問題,params需要和url, views在同一級,views正如字面意思那樣,是指定ui的,你在其中指定了params就有問題了,需要改成如下這樣:

.state('tab.my-profile-mobileinput', { url: '/my/profile/mobileinput', params: {'mobile': null}, views: { 'tab-my': {templateUrl: 'templates/util-mobile-input.html',controller: 'MobileInputCtrl' } } })回答2:

$broadcast,我記得這種應該采用事件廣播,可以將事件從父級作用域傳播至子級作用域,你可以百度一下相關內容,應該能夠解決

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 日本一级毛片免费 | 国产一区二区三区亚洲综合 | 在线免费观看一级片 | 国产理伦 | 美女视频黄a视频美女大全 美女视频黄a视频免费全程 | 亚洲欧美日韩一区 | 一区二区三区在线 | 欧 | 久草新 | 欧美久久久久久久一区二区三区 | 久久亚洲精品tv | 成人午夜免费视频 | 97在线国产视频 | 美女张开腿让男人桶爽免费网站 | 手机看片欧美 | 久久久9999久久精品小说 | 中文字幕s级优女区 | 国产精品爱久久久久久久三级 | 久久久精品成人免费看 | 国产精品精品国产 | 怡红院亚洲 | 亚洲精品国产国语 | 在线成人精品国产区免费 | 中文字幕曰韩一区二区不卡 | 精品久久久久久乐 | 欧美性猛交xxx免费看人妖 | 国产精品视频一区二区三区 | 亚洲综合国产一区在线 | www.av在线.com| 手机在线观看a | 亚洲午夜精品一级在线 | 色www亚洲 | 久久99精品视频在线在线观看 | 草久免费视频 | 中文字幕日韩一区二区不卡 | 久久精品视频免费观看 | 国产精品成人网 | 在线观看视频中文字幕 | 亚洲日韩精品欧美一区二区 | 一级毛片牲交大片 | 欧美成人精品一区二区三区 | 成人夜色香网站在线观看 |