英文:
How do I get item from localstorage immediately after page loads in vue js?
问题
这是我的存储:
我获取名为 selectedResultIsLCC
的值为 true
的变量 selectedResultIsLCC
。
这是我的脚本:
computed: {
isLCC() {
return localStorage.getItem("selectedResultIsLCC") === "true";
},
},
这是我的模板:
<div>
<div
v-if="isLCC"
@click="sendTicketRequest"
>
立即预订(LCC)
</div>
<div
v-else
@click="sendBookRequest"
>
立即预订(非-LCC)
</div>
</div>
</div>
在我看到模板中的 v-if
返回 true 之前,我必须进行强制刷新。
请问我应该如何处理这个问题,如何在页面加载时立即获取存储中的项目。
英文:
This is my storage:
I get selectedResultIsLCC
with value "true"
This is my script:
computed: {
isLCC() {
return localStorage.getItem("selectedResultIsLCC") === "true";
},
},
This is my template:
<div>
<div
v-if="isLCC"
@click="sendTicketRequest"
>
Book Now (LCC)
</div>
<div
v-else
@click="sendBookRequest"
>
Book Now (Non-LCC)
</div>
</div>
</div>
I have to hard refresh before I see v-if in template which returns true in my storage.
Please how do I go about this, how can I get the item in my storage immediately the page loads.
答案1
得分: 1
使用 `created` 或 `mounted` 生命周期,最好将变量存储在 Vue 的数据中:
```vue
<script>
export default {
data() {
return {
isLCC: false
};
},
created() {
this.isLCC = localStorage.getItem("selectedResultIsLCC") === "true";
},
};
</script>
英文:
Use created
or mounted
lifecycle and it's better store variables in vue data:
<script>
export default {
data() {
return {
isLCC: false
};
},
created() {
this.isLCC = localStorage.getItem("selectedResultIsLCC") === "true";
},
};
</script>
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论