最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

vue中 this.$set的用法详解

来源:动视网 责编:小采 时间:2020-11-27 21:51:02
文档

vue中 this.$set的用法详解

vue中 this.$set的用法详解:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的。 <template> <div id=app> <p v-for=item in items :key=item
推荐度:
导读vue中 this.$set的用法详解:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的。 <template> <div id=app> <p v-for=item in items :key=item


当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的。

<template>
 <div id="app">
 <p v-for="item in items" :key="item.id">{{item.message}}</p>
 <button class="btn" @click="handClick()">更改数据</button>
 </div>
</template>

<script>
export default {
 name: 'App',
 data () {
 return {
 items: [
 { message: "one", id: "1" },
 { message: "two", id: "2" },
 { message: "three", id: "3" }
 ]
 }
 },
 mounted () {
 this.items[0] = { message:'first',id:'4'} //此时对象的值更改了,但是视图没有更新
 // let art = {message:'first',id:"4"}
 // this.$set(this.items,0,art) //$set 可以触发更新视图
 },
 methods: {
 handClick(){
 let change = this.items[0]
 change.message="shen"
 this.$set(this.items,0,change)
 }
 }
}
</script>

<style>

</style>

调用方法: Vue.set( target , key , value)

  • target: 要更改的数据源(可以是一个对象或者数组)
  • key 要更改的具体数据 (索引)
  • value 重新赋的值
  • 文档

    vue中 this.$set的用法详解

    vue中 this.$set的用法详解:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的。 <template> <div id=app> <p v-for=item in items :key=item
    推荐度:
    标签: 使用 VUE 用法
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top