Vue中的父子組件傳值.sync
vue父子組件傳值.sync
傳統(tǒng)的父子組件之間傳值
父組件通過 :變量=“xxx”將值傳給子組件
子組件通過props進行接收
但是子組件只有讀的屬性,不可以對數(shù)據(jù)進行更改,所以$emit傳回父組件,由父組件對數(shù)據(jù)進行修改
//父組件 <template> <div class="content"> <btn :btnName='num' @changeFn= changeFn></btn> </div> </template> 子組件 export default { name: 'btn', props: { btnName:{ type : [String,Number], required: true } }, methods: { changeNum(){ this.$emit('changeFn',888) } }, }
.sync相當于上面的父子組件傳值簡寫
父子雙向傳值語法糖
父組件在傳入子組件的數(shù)據(jù)后加上.sync 不需要在對子組件的$emit進行接收
<template> <div class="content"> <btn :btnName.sync='num' ></btn> </div> </template>
子組件$emit傳回的不再是函數(shù) 而是 update:父組件傳過來的變量名稱
<script> export default { name: 'btn', props: { btnName:{ type : [String,Number], required: true } }, methods: { changeNum(){ this.$emit('update:btnName',888) } }, } </script>
總的來說
.sync 使得父組件少走了處理 $emit的那一步
好了,以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue2.0 移動端實現(xiàn)下拉刷新和上拉加載更多的示例
本篇文章主要介紹vue2.0 移動端實現(xiàn)下拉刷新和上拉加載更多的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04詳解vue中點擊空白處隱藏div的實現(xiàn)(用指令實現(xiàn))
本篇文章主要介紹了詳解vue中點擊空白處隱藏div的實現(xiàn)(用指令實現(xiàn)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04vue實現(xiàn)動態(tài)顯示與隱藏底部導航的方法分析
這篇文章主要介紹了vue實現(xiàn)動態(tài)顯示與隱藏底部導航的方法,結合實例形式分析了vue.js針對導航隱藏與顯示的路由配置、事件監(jiān)聽等相關操作技巧,需要的朋友可以參考下2019-02-02Vue CLI3中使用compass normalize的方法
這篇文章主要介紹了Vue CLI3中使用compass normalize的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05