修改陣列中的變數,無法立馬觸發檢視更新(三種解決方案)
第一:使用$set.
直接給student賦值操作,雖然可以新增屬性,但是不會觸發檢視更新
mounted () {
this.student.age = 24
}
原因是:受 ES5 的限制,Vue.js 不能檢測到物件屬性的新增或刪除。因為 Vue.js 在初始化例項時將屬性轉為 getter/setter,所以屬性必須在 data 物件上才能讓 Vue.js 轉換它,才能讓它是響應的。
要處理這種情況,我們可以使用$set()方法,既可以新增屬性,又可以觸發檢視更新。
錯誤寫法:this.$set(key,value)(ps: 可能是vue1.0的寫法)
mounted () {
this.$set(this.student.age, 24)
}
正確寫法:this.$set(this.data,”key”,value’)
mounted () {
this.$set(this.student,"age",
第二種:用ES6的物件.assign更新物件
Object.assign方法用於物件的合併,將源物件( source )的所有可列舉屬性,複製到目標物件( target )
第三種:用強制重新整理$forceUpdate()
新增this.$forceUpdate();進行強制渲染,效果實現。搜尋資料得出結果:因為資料層次太多,render函式沒有自動更新,需手動強制重新整理。
相關推薦
修改陣列中的變數,無法立馬觸發檢視更新(三種解決方案)
第一:使用$set. 直接給student賦值操作,雖然可以新增屬性,但是不會觸發檢視更新 mounted () { this.student.age = 24}原因是:受 ES5 的限制,Vue.js 不能檢測到物件屬性的新增或刪除。因為 Vue.js 在初始化例項時將屬性轉為 getter/sette
Mybatis傳多個參數(三種解決方案) mapper.xml的sql語句修改!
修改 and 接收 select sql 函數 resultmap rom var 第一種 Public User selectUser(String name,String area); 對應的Mapper.xml <select id="selectUs
怎樣在程式中利用C++支援多國語言(一種解決方案)
emule是利用動態載入資源DLL來實現多語言切換的,每一個資源DLL中包含了一份對應某一語言的字串表。在原始碼的srchybrid/lang 路徑上可以發現一個lang解決方案,其中包含了差不多40個專案,每個專案編譯出來都是一個單獨的DLL。這些DLL在程式安裝時拷貝到指定的目錄中。每個DLL裡面都
golang中在遍歷陣列時,要修改陣列中變數無法修改成功的問題
記錄在寫go時遇到的一個小坑 例子: package main import ( "fmt" ) type UserInfo struct { Name string `json:"name"` UserId int `json:"user_id"` } type M
Linux系統CentOS7.x配置java環境變數,無法使用yum install命令等若干問題解決
1. 相信很多linux新手和我一樣,在學習linux下開發java程式時,會遇到很多的問題。尤其是使用CentOS7的版本。下面我將我遇到的問題和解決辦法一一給大家講解一下,希望會有所受益。 配置java環境變數首先是下載jdk,(注意一點就
當ListView巢狀在ScrollView,無法置頂【啟動位置偏移的解決方案】
myScrollView.smoothScrollTo(0,20); 在程式碼裡去掉listview的焦點,lv.setFocusable(false); 以上是關鍵程式碼。 全域性程式碼如下: package com.findai.xkk.ai_
關於pycharm中使用charts無法顯示圖表的問題(屬於個人粗心問題)
在練習用charts庫對爬取的資料進行資料分析並圖表化時遇到一個問題,無法顯示圖表,如下: 經過重灌charts庫等一頓折騰後,終於發現一個問題,看這裡: def data_gen(type): length = 0 if length <= len(area_index):
VMware中虛擬機器無法使用命令列獲取ip地址問題解決方案
問題描述: VMware中配置好的CentOS7虛擬機器前一天還可以使用ip addr獲取ip地址等資訊,第二天便無法獲取。且重新配置虛擬機器時,網路分配顯示無法使用 問題原因: 大概是win
maven依賴jar包更新,業務jar需同步更新(業務jar依賴API)
maven lean 出現 問題 方法 bsp 更新 之前 新環境 背景: 環境出現問題,定位為依賴jar缺失,修改工程pom文件補充依賴jar。 更新要點說明: 依賴jar,更新提交 業務jar,也需更新提交:maven構建會把依賴jar引用進去,更新環境如果
關於quartz定時任務實現Job介面無法註解為spring bean 的一種解決方案
通常情況下,我們使用quartz之後,定時任務實現Job介面,並重寫execute()方法: public class QuartzJob1 implements Job { /** * quartz回撥此介面,此介面中為定時任務具體執行內容 *
Java中實現檔案上傳下載的三種解決方案
第一點:Java程式碼實現檔案上傳 FormFile file=manform.getFile(); String newfileName = null; String newpathname=null; String fileAddre="/numU
.Java多分支;if……else…… 每噸貨物每公里運費P與運輸距離S有關,路途越遠,每公里運價越低。兩種解決方案
每噸貨物每公里運費P與運輸距離S有關,路途越遠,每公里運價越低。公式如下: p=10s<100 8100<=s<150 7150<=s<200 6200<=s<300 5.5 300<=s<500 5s>=500 如果所付的總運費超過5000元時,再
DIV巢狀時外層無法自適應高度三種解決方案
http://developer.51cto.com/art/201009/225428.htm 這裡向大家描述一下解決DIV巢狀時外層(父層)無法自適應高度的方法,原本自己寫的CSS程式碼是沒有錯誤的,但是為什麼在新版的瀏覽器中會發現使用DIV巢狀時外層(父層)無法自
Win10 1607無法安裝KB4019472累積更新失敗的官方解決方案
問題原因 登錄檔問題,第三方軟體更改了登錄檔。 XblGameSave資料夾問題 1.首先先刪除Windows資料夾裡面的“XblGameSave”資料夾,按快捷鍵“win+R”,然後輸入C:\Windows\System32\Tasks\Microsof
Python2.x編譯器列印中文出現亂碼的三種解決方案(本人以VS2017與VS Code為例,使用其他整合開發工具的也可參考下)
本文主要介紹了三種解決方案: 解決方案一:在需要列印的中文字元前加個u,用於標識所要列印的是一個Unicode字串。(我感覺著一種方法是最簡單和省事的,並且使用其他整合開發工具的若遇到類似的問題,也應該可以使用這種方法解決,具體大家可以在下方評論)(測試此方法不適合在Vis
linux中network啟動不了的三種解決方案
我百度了好久,沒找到我的問題,後來是google找到的(1) 檢視主機地址 ip addr link/other 後既是主機地址修改/etc/sysconfig/network-scripts/ifcfg-ens33 檢視HWADDR地址如果沒有,新增,如果和ip add
Android Studio中使用自定義Android.jar缺少方法的一種解決方案
最近在Android Studio專案中ListView的scrollListBy方法,這個方法在SDK 19及其以上版本才有的,而專案使用的自定義Android.jar中的ListView並不包含這個方法。 如果為了使用這個方法,而重新編譯Android.jar,代價太大
iOS-使用imageView新增圖片無法展示的三種解決方案
問題描述: 1.未使用Assets.xcassets新增照片,是直接把圖片拉到某資料夾下的 2.圖片格式為.png 3.具體程式碼如下,背景色可以展示: bgView = UIImageView
關於Ubuntu中E: Could not get lock /var/lib/dpkg/lock - open的三種解決方案
正常 num 後臺 dir 管道 mini not 文件夾 目錄 問題 在Ubuntu中,有時候運用sudo apt-get install 安裝軟件時,會出現如下的情況: E: Could not get lock /var/lib/dpkg/lock - op
記錄一次MySQL兩千萬資料的大表優化解決過程,提供三種解決方案
問題概述 使用阿里雲rds for MySQL資料庫(就是MySQL5.6版本