Javascript Vue.js不更新HTML
我在本地Vue.js项目中有以下Javascript Vue.js不更新HTML,javascript,html,vue.js,es6-modules,Javascript,Html,Vue.js,Es6 Modules,我在本地Vue.js项目中有以下.html文件(这是一个简化版本): 这里的问题是Vue.js会对对象中的更改做出反应(如果我使用查看),但它不会更新我的HTML: … 当新属性添加到对象时,如何使Vue.js更新我的HTML?Vue有一种方法可以将属性添加到数据属性中的项目中(这样它们就可以保持反应性)。(更多信息:) 下面的代码段可能会帮助您查看正在运行的方法: class-SomeClass{ 构造函数(){ this.object={ 名称1:{ 名称:'name3' }, 名称2:{
.html
文件(这是一个简化版本):
这里的问题是Vue.js会对对象中的更改做出反应(如果我使用查看),但它不会更新我的HTML:
…
当新属性添加到对象时,如何使Vue.js更新我的HTML?Vue有一种方法可以将属性添加到数据属性中的项目中(这样它们就可以保持反应性)。(更多信息:)
下面的代码段可能会帮助您查看正在运行的方法:
class-SomeClass{
构造函数(){
this.object={
名称1:{
名称:'name3'
},
名称2:{
名称:“名称4”
}
}
}
}
const myClass=new SomeClass()
新Vue({
el:“应用程序”,
计算:{
//用于反应显示的变换阵列
transformedObj(){
常量ret=[]
this.keyVal().forEach(e=>{
e、 forEach(el=>{
后推(el)
})
})
回程网
}
},
数据:{
对象:myClass.object
},
方法:{
//变换对象以获得更好的显示效果
keyVal(){
返回Object.keys(this.Object.map)(e=>{
返回Object.entries(this.Object[e]).map([k,v])=>{
返回`${k}:${v}`
})
})
}
},
安装的(){
//添加新属性(被动)
Vue.set(this.object.name1,'newProperty','2')
//或添加新属性(反应性)
this.$set(this.object.name2,'localNewProperty',45)
}
})
- {{item}
对象:{{transformedObj}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue.js</title>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<main>
<div id="myElement">
<div v-for="(properties, name) in list" v-bind:key="name">{{ name }}</div>
</div>
</main>
<script type="module">
import SomeClass from "./SomeClass.js";
const myClass = new SomeClass();
let app = new Vue({
el: "#myElement",
data: {
list: myClass.object
},
});
</script>
</body>
</html>
export default class SomeClass {
constructor() {
this.object = {
name1: { ... },
name2: { ... },
...
};
}
}