我目前正在尝试了解如何在 Angular 组件中收集 queryParameters。因为我只想在初始化期间收集它们一次,所以我首先尝试了快照模式:
ngOnInit() {
console.log(this.route.snapshot.queryParamMap);
console.log('param test = ' + this.route.snapshot.queryParamMap.get('test'));
}
Run Code Online (Sandbox Code Playgroud)
查看Stackblitz演示:https://stackblitz.com/edit/angular-2tuafn 可测试通过folowwing网址:https://angular-2tuafn.stackblitz.io?test=123
但结果,queryParam "test" 为空,而 queryParamMap 为空,请参阅控制台输出:
ParamsAsMap {params: {…}}
keys: Array(0)
params: {}
__proto__: Object
param test = null
Run Code Online (Sandbox Code Playgroud)
=> 为什么 queryParamMap 是空的???
然后,我尝试使用 Observable 模式:
ngOnInit() {
this.route.queryParamMap.subscribe(
(params: ParamMap) => {
console.log(params);
console.log('param test = ' + params.get('test'));
}
);
}
Run Code Online (Sandbox Code Playgroud)
查看Stackblitz演示:https://stackblitz.com/edit/angular-hfqx8a 可测试通过folowwing网址:https://angular-hfqx8a.stackblitz.io?test=123
但结果, queryParam "test" 首先为空,然后取正确的值 (123),请参阅控制台输出:
ParamsAsMap {params: {…}}
keys: Array(0)
params: {}
__proto__: Object
param test …
Run Code Online (Sandbox Code Playgroud) 我目前被要求生成将包含在不同客户网站中的小部件。
让我们这样说:
有2个约束:
由于请求的小部件应该是交互式的,我想使用 javascript 框架来开发它(我想到了 Vue.js)。
但是,我认为这可能会导致一些冲突(甚至破坏客户的网站),例如,如果客户的网站已经在使用另一个版本的 Vue.js。
我花了几个小时寻找和思考解决方案,但期望使用 iframe 我没有找到任何东西......
=> 有没有办法将 Vue.js 应用程序包含在另一个 Vue.js 应用程序(或 React、Angular 等)中?
在此先感谢您的帮助。
我是 Nuxt 的新手,我面临着一个我不明白的问题。
如果我编码如下:
const resp1 = await this.$axios.$post('urlCall1', {...dataCall1});
this.$axios.$post('urlCall2', {...dataCall2, resp1.id});
Run Code Online (Sandbox Code Playgroud)
resp1.id 在第二个 axios 调用中正确设置 => 我们等待第一个调用完成,然后再进行第二个调用。
但是,当我在 vuex 商店 ex 中定义异步操作时:
async action1({ commit, dispatch }, data) {
try {
const respData1 = await this.$axios.$post('urlCall1', { ...data });
commit('MY_MUTATION1', respData1);
return respData1;
} catch (e) {
dispatch('reset');
}
},
async action2({ commit, dispatch }, data, id) {
try {
const respData2 = await this.$axios.$post('urlCall2', { ...data });
commit('MY_MUTATION2', respData2);
} catch (e) {
dispatch('reset');
}
}
Run Code Online (Sandbox Code Playgroud)
然后在我的 …
我目前正在开发一个单页应用程序。在主页面中显示了几张卡片。可以启用或禁用这些卡。如果禁用,则仅显示卡片的标题。如果启用,则显示卡片的标题和内容(延迟加载)默认情况下,所有卡片都显示和禁用。根据用户的档案,加载页面时某些卡片可能处于活动状态。
目前,我没有设置任何preloadingStrategy,因此,在加载页面时,只加载活动卡片的内容。
我试图将 preloadingStrategy 设置为 preloadAllModules,它工作正常,但它减慢了应用程序的启动速度。实际上,当所有模块同时加载时,活动卡的内容显得较慢。
=> 我想要的是:1. 加载应用程序 2. 加载所有活动卡片的内容 3. 预加载所有其他在启动时未显示的模块
=> 在第一次渲染后某种延迟预加载
=> 你认为这可能吗?
提前感谢您的反馈