我有一个cordova应用程序,它由2个角度应用程序(“login-app”和“app”)组成,具有以下结构:
index.html
login-app
|-- ...
|-- index.html
app
|-- ...
|-- index.html
首先,我们进入“login-app”,当用户凭据正确时,它会重定向到“app”:
window.location.href = '../app/index.html';
然后,出于某种原因(例如更新用户密码),我想从“app”转到“login-app”,所以我这样做:
window.location.href = '../web-login/index.html?pageName=chgPwd';
为了切换到“login-app”并知道我想更改密码,我可以显示正确的组件。 在我的浏览器控制台中,我得到了这个:
Navigated to file:///android_asset/www/web-login/index.html?pageName=chgt-pwd
但我不知道如何在我的角度组件中获取这个“pageName”参数(在'login-app'中),我试过这个,使用'ActivatedRoute'类型的变量'route':
this.route.queryParams.subscribe(queryParams => {
console.log('pageName >>> ' + queryParams['pageName']);
});
但它是'未定义'。
事实上,URL变成了这个:'file:/// android_asset / www / web-login /#/',我丢失了参数。
这样做有“干净的方式”吗?或者我可能需要设置一个父全局变量?
谢谢,
答案 0 :(得分:0)
好的,使用localStorage
解决了问题