• 2
  • 新人请关照

ui-sref在tabs情况下,只会读取上一次的url

我用ionic的tabs做一个小应用,发现在ion-tab下使用ui-sref出现很奇怪的问题,打开第一次访问正常,当第二次打开另一个页面时,浏览器url显示还是上一次的url,但ui-sref生成的url是对的
第一次:

URL

:/menu/120201tab/detaillist_120201/?doccode=DD02186&id=DD02186

查看对应的html源码:

<ion-tab icon-off="ion-ios-film-outline" icon-on="ion-ios-film" ui-sref="menu.120201tab.detaillist_120201({doccode:$stateParams.doccode,id:$stateParams.doccode})" ui-sref-opts="{reload: true}" href="#/menu/120201tab/detaillist_120201/?doccode=DD02186&amp;id=DD02186"></ion-tab>

第二次打开另一个页面浏览器正确的应该显示:

URL

:/menu/120201tab/detaillist_120201/?doccode=DD02185&id=DD02185

但显示的却是上一个的URL

:/menu/120201tab/detaillist_120201/?doccode=DD02186&id=DD02186

查看对应的html源码,可以看到是正确的:

<ion-tab icon-off="ion-ios-film-outline" icon-on="ion-ios-film" ui-sref="menu.120201tab.detaillist_120201({doccode:$stateParams.doccode,id:$stateParams.doccode})" ui-sref-opts="{reload: true}" href="#/menu/120201tab/detaillist_120201/?doccode=DD02185&amp;id=DD02185"></ion-tab>

搞不明白为什么会这样?麻烦各位帮帮看看,谢谢!


例子:https://codepen.io/anon/pen/JKLZaR
执行以下步骤:
1,在List页卡,点击列表的a1项,切换到第二个页面显示,然后点击页卡"ItemDetail",切换到第三个页面显示(test1-detail)
2,在第1步的第三个页点击"List"页卡,然后点击列表的a2项,切换到第二个页面显示,然后点击页卡"ItemDetail",切换到第三个页面显示(test2-detail)
3,经过这二步后重复第1步的操作,会发现当执行到第三个页面显示的时候,内容却是第2步中第三个页面的的内容(test2-detail)而不是(test1-detail)。也就是说只要是之前打开过的,再重新打开时都只会显示最后一次所打开的内容。
是否与用$rootScope调用有关?因为只有用$rootScope,页卡才能响应ng-click事件

html:
 <ion-tab title="ItemDetail" icon="ion-ios-information" ng-click="showItemDetail()">

controller:
 $rootScope.showItemDetail= function () {.....})
阅读 2k
评论
    0 个回答
    撰写回答

    登录后参与交流、获取后续更新提醒