欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue如何用this.$set改變數(shù)組里的某個值

 更新時間:2022年12月19日 09:35:19   作者:HqL丶1024  
這篇文章主要介紹了Vue用this.$set改變數(shù)組里的某個值,文中通過示例代碼介紹了vue中this.$set()的用法----更新數(shù)組和對象的值,需要的朋友可以參考下

Vue用this.$set改變數(shù)組里的某個值

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta
      name="viewport"
      content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
    />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <script src="https://cdn.suoluomei.com/common/js2.0/vue/v2.5.16/vue.js"></script>
    <title>表格數(shù)據(jù)分頁</title>
    <style>
      * {
        margin: 0;
        padding: 0;
      }
    </style>
  </head>
  <body>
    <div id="vue">
      <div id="app">
        <p v-for="item in items" :key="item.id">{{item.message}}</p>
      </div>
    </div>
  </body>

  <script>
    new Vue({
      el: "#vue",
      data: {
        items: [
          { message: "one", id: "1" },
          { message: "two", id: "2" },
          { message: "three", id: "3" },
        ],
      },
      methods: {},
      mounted() {
        let that = this;
        // this.items[0] = { message: "first", id: "4" }; //此時對象的值更改了,但是視圖沒有更新
        let art = { message: "first", id: "4" };
        this.$set(this.items, 0, art); //$set 可以觸發(fā)更新視圖
      },
    });
  </script>
</html>

補充知識:

下面看下vue中this.$set()的用法----更新數(shù)組和對象的值

我們先看看官網(wǎng)給出的解釋:

1、更新數(shù)組:

我們有一個數(shù)組,包括人員姓名和人員年齡兩個屬性。

想要實現(xiàn)在頁面剛加載的時候改變姓名為李四的人的信息。

首先我們想到的是在mouted函數(shù)中直接修改name為李四的人的信息

this.itemList[1] = {
      name: '李思思',
      age: 30
    }
    console.log(this.itemList[1]);

但是這時候控制臺打印的數(shù)據(jù)更新了,但是頁面視圖卻沒有更新。這時候我們就需要用到this.$set()來更新視圖了。

 <!-- 使用$set更新數(shù)組的值 -->
    <ul>
      <li v-for="(item,index) in itemList" :key="index">
        <div>
          <span>姓名:</span>
          <span>{{item.name}}</span>
          <span>年齡:</span>
          <span>{{item.age}}</span>
        </div>
      </li>
    </ul>

data() {
    return {
      itemList: [
        {
          name: "張三",
          age: 18,
        },
        {
          name: "李四",
          age: 20,
        },
        {
          name: "王五",
          age: 22,
        },
      ],
      person: {
        name: '前端勸退師'
      }
    }
  },
  mounted() {
    // 要求
    // 修改數(shù)組中姓名為李四的人的信息
    // this.itemList[1] = {
    //   name: '李思思',
    //   age: 30
    // }
    // console.log(this.itemList);
    console.log("======================");
    this.$set(this.itemList, 1, {
      name: '李思思',
      age: 30
    });
  },

2、更新對象:

eg:給對象添加一個屬性并賦值,上代碼:

 <!-- 使用$set更新對象的值-----給對象添加屬性 -->
    <div style="display:flex;">
      <p>{{person.name}}</p>
      <el-input v-model="person.score" style="width:200px;"></el-input>
    </div>
    <el-button @click="addScore">自定義成績</el-button>

 methods: {
    addScore() {
      this.person.score = "60"
      console.log(this.person);
      // this.$set(this.person, "score", "60");
    }
  }

在button事件點擊的時候給person對象添加score屬性,發(fā)現(xiàn):

我們發(fā)現(xiàn)控制臺打印的結(jié)果顯示給person對象添加了score屬性并賦值了60,但是在頁面上并沒有更新新加的score屬性和它對應的值,這時候便使用this.$set()來更新視圖層了。

methods: {
    addScore() {
      // this.person.score = "60"
      // console.log(this.person);
      this.$set(this.person, "score", "60");
    }
  }

這時候就顯示合適了。

注意:this.$set( target, key, value )

target:要更改的數(shù)據(jù)源(可以是對象或者數(shù)組)

key:要更改的具體數(shù)據(jù)

value :重新賦的值。

到此這篇關于Vue用this.$set改變數(shù)組里的某個值的文章就介紹到這了,更多相關Vue用this.$set改變數(shù)組某個值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解基于 Nuxt 的 Vue.js 服務端渲染實踐

    詳解基于 Nuxt 的 Vue.js 服務端渲染實踐

    這篇文章主要介紹了詳解基于 Nuxt 的 Vue.js 服務端渲染實踐,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • uniapp?vue與nvue輪播圖之輪播圖組件的示例代碼

    uniapp?vue與nvue輪播圖之輪播圖組件的示例代碼

    這篇文章主要介紹了uniapp?vue與nvue輪播圖輪播圖組件的實例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • vue-cli 介紹與安裝

    vue-cli 介紹與安裝

    這篇文章主要給大家介紹的是vue-cli 介紹與安裝,vue-cli是和vue進行深度組合的工具,可以快速幫我們創(chuàng)建vue項目,并且把一些腳手架相關的代碼給我們創(chuàng)建好。真正使用vue開發(fā)項目,都是用vue-cli來創(chuàng)建項目的,下面文章詳細內(nèi)容,需要的朋友可以參考一下
    2021-10-10
  • vue中實現(xiàn)圖片和文件上傳的示例代碼

    vue中實現(xiàn)圖片和文件上傳的示例代碼

    下面小編就為大家分享一篇在vue中實現(xiàn)圖片和文件上傳的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • vue實現(xiàn)圖片上傳預覽功能

    vue實現(xiàn)圖片上傳預覽功能

    這篇文章主要為大家詳細介紹了vue實現(xiàn)圖片上傳預覽功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • 淺談VUE uni-app 基礎組件

    淺談VUE uni-app 基礎組件

    這篇文章主要介紹了uni-app 的基礎組件,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-10-10
  • vue.js實現(xiàn)單選框、復選框和下拉框示例

    vue.js實現(xiàn)單選框、復選框和下拉框示例

    本篇文章主要介紹了vue.js實現(xiàn)單選框、復選框和下拉框示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Vue項目打包壓縮的實現(xiàn)(讓頁面更快響應)

    Vue項目打包壓縮的實現(xiàn)(讓頁面更快響應)

    這篇文章主要介紹了Vue項目打包壓縮的實現(xiàn)(讓頁面更快響應),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • vue+Element-ui實現(xiàn)登錄注冊表單

    vue+Element-ui實現(xiàn)登錄注冊表單

    這篇文章主要為大家詳細介紹了vue+Element-ui實現(xiàn)登錄注冊表單,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Vue+element 解決瀏覽器自動填充記住的賬號密碼問題

    Vue+element 解決瀏覽器自動填充記住的賬號密碼問題

    我們在做form表單的時候,會發(fā)現(xiàn),瀏覽器會自動的將我們之前保存的密碼,自動的填充到表單中input 為 type="password" 的框中,如何實現(xiàn)此功能呢,下面小編給大家介紹下,感興趣的朋友一起看看吧
    2019-06-06

最新評論