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

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

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

瀏覽:173日期: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
相關文章:
主站蜘蛛池模板: 亚洲第一网站在线观看 | 国产成人精品综合久久久软件 | 国产成人免费高清在线观看 | 天堂在线www网亚洲 天堂在线视频网站 | 日本一级大黄毛片免费基地 | 成人韩免费网站 | 视频一区 欧美 | 精品久久久久久国产91 | 九九国产 | 91福利精品老师国产自产在线 | 爱爱毛片 | 草久视频在线观看 | 在线播放日韩 | 午夜日韩 | 亚洲一成人毛片 | 99久久免费国产精品 | 在线成人亚洲 | 依人九九| 日本一区深夜影院深a | 欧美国产精品 | 国内精品小视频在线 | 亚洲波多野结衣日韩在线 | 欧美日韩亚洲一区二区三区 | 欧美又粗又硬又大久久久 | 在线免费看黄色 | 欧美美女网站 | 久久久久欧美精品观看 | 日本免费视频观看在线播放 | 日韩一级欧美一级在线观看 | 欧美日韩精品高清一区二区 | 亚洲免费视频网站 | 伊人久久综合热青草 | 亚洲最新网址 | 夜色www国产精品资源站 | 欧美在线bdsm调教一区 | 国产理论在线观看 | 91香焦视频| 美女a毛片| 国产成人综合亚洲一区 | 天天拍拍夜夜出水 | 国产年成美女网站视频免费看 |