第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Vue的prop的幾個(gè)問題

Vue的prop的幾個(gè)問題

阿晨1998 2019-02-15 23:38:10
如圖,這個(gè)例子。就是prop不是接收父組件的值嗎,那v-bind:value不應(yīng)該寫在<currency-input ></currency-input>里嗎<currency-input v-bind:value="value"></currency-input>最后一句好像刪掉也沒影響。。請(qǐng)問作用是什么this.$emit('input', Number(formattedValue))2.再弱弱的問一句,這個(gè)例子的父組件和子組件分別是誰,有點(diǎn)亂
查看完整描述

2 回答

?
慕桂英4014372

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超13個(gè)贊

// currency-input是子組件。外層是父組件。

<currency-input v-model="price"></currency-input>

// 這里的v-model是語法糖,其實(shí)就是:

<currency-input v-bind:value="price" @input="input"></currency-input>

// 你打紅框的是從父組件傳遞過去的price值。

this.$emit('input', Number(formattedValue))

// 這句是把結(jié)果值傳遞回父組件,供父組件使用。

// 比如父組件長(zhǎng)這樣:

<div>

    組件

    <currency-input v-model="price"></currency-input>

</div>

new Vue({

    data:{},

    methods:{},

});

建議多看幾次,Vue文檔:自定義事件
并動(dòng)手實(shí)踐。

查看完整回答
反對(duì) 回復(fù) 2019-02-19
?
RISEBY

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊

1、在這個(gè)例子中currency-input是組件,其內(nèi)沒有子組件。

2、<currency-input v-model="price"></currency-input>
等價(jià)于
<currency-input v-bind:value="price"></currency-input>
至于 template 里的<input ref="input" v-bind:value="value" v-on:input="updateValue($event.target.value)">
等價(jià)于
<input ref="input" v-model="value" v-on:input="updateValue($event.target.value)">

3、this.$emit('input', Number(formattedValue))
是用于傳值給currency-input的上層組件。
因?yàn)檫@里的v-model不像input的v-model那樣可以雙向綁定,這里的v-model只是個(gè)語法糖,是作為值傳遞的,所以需要:

在有新的值時(shí)觸發(fā) input 事件并將新值作為參數(shù)

在這里 vue 在背后幫我們做了處理更新了value,而不需要我們v-on來接受 input 事件后再去改變value值。


查看完整回答
反對(duì) 回復(fù) 2019-02-19
  • 2 回答
  • 0 關(guān)注
  • 923 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)