vuejs3 - 无法读取 null 的属性“insertBefore”
问题描述
我有一个使用 v-for 显示的 div 标签列表。当我将项目添加到状态时,UI 应该会自动更新。
<template>
<button type="button" v-on:click="addItem">
Add Item
</button>
<div>
<div v-for="li in list" :key="li" v-text="li"></div>
</div>
</template>
<script>
export default {
name: 'Test',
data() {
const list = [];
return {
list
};
},
methods: {
addItem() {
const current = `list-item-${this.list.length + 1}`;
//Send to a server (Assume sessionStorage)
this.sendToServer(current).then((response) => {
this.getListItemsFromServer();
});
},
sendToServer(item) {
let data = JSON.parse(sessionStorage.getItem("server-data"));
if (!Array.isArray(data)) {
data = [];
}
data.push(item);
sessionStorage.setItem("server-data", JSON.stringify(data));
return Promise.resolve();
},
getListItemsFromServer() {
/// Let's assume sessionStorage is the server database
try {
let data = JSON.parse(sessionStorage.getItem("server-data"));
if (!Array.isArray(data)) {
data = [];
}
this.list = data;
} catch (e) {
console.error(e);
this.list = [];
}
}
},
mounted() {
this.getListItemsFromServer();
}
};
</script>
当我在开发模式下运行它时,这非常有效。但是,当我部署生产构建时,它会失败并显示上述错误消息。大多数时候,我为缓解这种情况所做的就是使用 location.reload() 彻底运行页面刷新。然而,这不是一个干净的方法。
这是一个错误,一个已知问题还是我做错了什么。
请帮忙。
解决方案
推荐阅读
- javascript - 如何在单个 Material-UI DataGrid 中呈现逗号分隔的链接列表?
- c# - .Net Core 3.1 Web API 中的可空列表参数
- r - spec_tbl_df 在与普通 tibble 相同的操作上慢 10 倍以上
- reactjs - 如何制定一个条件,如果有数据,它将呈现该数据,但如果没有,它将简单地呈现 null
- microsoft-teams - 与活跃团队会议的深层链接
- join - AttributeError: 'function' 对象在使用连接查询时没有属性
- jquery - 使用 jquery 时变量不会初始化
- python - 语音识别 Python 模块在 6 个月后停止工作
- java - Spring应用程序不在网页中显示数据?
- java - 如何使用 ViewModel 将数据加载到片段内的 RecyclerView