在再次打开应用程序之前,侧边菜单不会刷新
Posted
技术标签:
【中文标题】在再次打开应用程序之前,侧边菜单不会刷新【英文标题】:Side menu doesn't refresh untill open the app again 【发布时间】:2017-02-12 13:56:48 【问题描述】:在我的应用程序中,我使用 ng-bind 在侧面菜单标题处显示用户名。 此用户名来自本地存储。但是当我编辑用户配置文件和用户名时,并将其覆盖到本地存储。 之后,新用户名不会显示在 sidemenu-header 中。 但是当我从浏览器刷新页面或重新打开应用程序时,它会有效地显示新页面。 那么我应该怎么做才能刷新侧面菜单(用户名)的内容? 它占用了我的时间...... 答案将不胜感激... 谢谢:)
嗨,亲爱的 感谢回复。 我在下面分享我的代码....
登录页面
我将名字和姓氏设置为来自服务响应的本地存储。 和登录页面 URL ==> http://localhost:8100/#/login
localStorage.setItem("名字",JSON.stringify($scope.dataa.first_name)); localStorage.setItem("lastname",JSON.stringify($scope.dataa.last_name));
然后我把它送到我的离子菜单控制器...... 变量名=; 变种姓=; $scope.firstname=JSON.parse(localStorage.getItem('firstname')); $scope.lastname=JSON.parse(localStorage.getItem('lastname'));
这个网址是==>http://localhost:8100/#/menu/dashboard1 一个根页面“菜单”。
当我编辑页面时,我再次将此内容设置为本地存储。但它没有显示到菜单标题。但是当我刷新页面时它会有效显示。 我认为这是根 url 问题==> /menu/ 在这个应用程序中永远不会刷新。
我用这个 url==>/localhost:8100/#/menu/editprofile 编辑这个内容 所以,它不会刷新根 url 页面。 但是当我用这个 url==>/localhost:8100/#/editprofile 编辑个人资料时 它,自动刷新内容.... 而不是上面的网址。 希望你能理解。 答案将被应用。 谢谢
【问题讨论】:
请提供您的一些代码 【参考方案1】:没有看到您的任何代码,我的直觉是尝试在超时内执行 $scope apply:
$timeout(function ()
$scope.$apply();
在更改绑定数据后执行上述操作,看看是否会强制刷新 UI。
(顺便说一句,如果您尝试将数据直接绑定到 localStorage,我怀疑这会起作用 - 您可能需要将数据保存在内存中,或者绑定到一个函数根据您的需要从 localStorage 中获取它。)
【讨论】:
以上是关于在再次打开应用程序之前,侧边菜单不会刷新的主要内容,如果未能解决你的问题,请参考以下文章
swrevealviewcontroller 在侧边菜单打开/关闭时更改切换按钮图像?
每当我更改 selenium + java 的缩放时,侧边菜单都不会出现