不允許子元件直接改變父元件的資料,但是往往專案需求需要改變父元件的資料,那我們如何變通呢?
如果不想影響父元件的值,我們也可以用json顛倒轉換的方式,在mounted方法中進行深拷貝,在data中初始化資料時用另乙個變數作為承載,這樣才承載變數改變,就不會影響父元件該變數的值了。
.text-oneline
json.parse(json.stringify(...))
所有的生命週期鉤子自動繫結this
上下文到例項中,因此你可以訪問資料,對 property 和方法進行運算。這意味著你不能使用箭頭函式來定義乙個生命週期方法(例如created: () => this.fetchtodos()
)。這是因為箭頭函式繫結了父上下文。
**簡化:子元件內觸發的事件名稱以「update:mypropname」命名,父元件v-bind:value 加上.sync修飾符,即 v-bind:value.sync(父元件就不用再手動繫結@update:value事件)
關於 v-model雙向繫結:乙個元件上只能定義乙個v-model,但如果有其他屬性也要提供雙向繫結,就需要.sync
注意點:
文章一
如果你知道你會在晚些時候需要乙個屬性,但是一開始它為空或不存在,那麼你僅需要設定一些初始值。比如:
data: = {})
move(); // [3, 8]
move(); // [3, 0]
move({}); // [0, 0]
move(); // [0, 0]
上面**中,函式move
的引數是乙個物件,通過對這個物件進行解構,得到變數x
和y
的值。如果解構失敗,x
和y
等於預設值。
注意,下面的寫法會得到不一樣的結果。
function move( = )
move(); // [3, 8]
move(); // [3, undefined]
move({}); // [undefined, undefined]
move(); // [0, 0]
上面**是為函式move
的引數指定預設值,而不是為變數x
和y
指定預設值,所以會得到與前一種寫法不同的結果。
undefined
就會觸發函式引數的預設值
重要應用:
點語法中括號(可以通過變數訪問屬性)
let person =
person.name; // huohuo
let person =
person['name']; // huohuo
person[age]; // 16
安卓開發問題記錄隨筆
2018.7.26 2018.7.29 一般在根布局檔案中會出現 tools context 某個activity名稱。這個屬性的意思是 如果你在androidmanifest.xml檔案中為某個activity設定了theme樣式,那麼,一般情況下,你在layout布局裡面是無法直接看到這個效果的...
Virsual Studio 開發問題
win32 控制台應用 自動生成 stdafx.h stdatx.cpp resouce.h targetver.h 工程名.cpp win32 dll 自動生成 stdafx.h stdatx.cpp resouce.h targetver.h 工程名.cpp dllmain.cpp stdafx...
開發問題集合
q1 變數儲存 超出範圍問題 設計id為256位的變數,策劃填表的時候超出範圍,最終儲存的變數將被截斷,導致與表中的資料不一致 a1 這時改變資料結構的話會導致之前擁有該物品的玩家丟失資料,建議的解決方案為,可臨時改變表中資料id為截斷後的數值,在每一次儲存資料的時候將數值手動進行判斷,若超出範圍的...