vue 之prop與$emit的用法
1、vue元件Prop傳遞資料:
元件例項的作用域是孤立的,這意味著不能在子元件的模板內直接引父元件的資料,如果要讓子元件使用父元件的資料,則需要通過子元件的prop選項;prop是單向繫結的,當父元件的屬性變化時,將傳遞給子元件,但是反過來不行;這樣主要是防止子元件無意修改父元件的狀態;每次父元件更新時,子元件的所有prop都會更新為最新值。這意味著你不能在子元件內部改變prop。
2、子元件可以使用 $emit 觸發父元件的自定義事件。
vm.$emit( event, arg ):傳送資料,第一個引數是傳送資料的名稱,接收時還用這個引數接收,第二個引數是這個資料現在的位置
拓展:
vm.$on( event, fn ):接收資料,第一個引數是資料的名稱,與傳送時的名字對應,第二個引數是一個方法,要對資料的操作
父元件:
<template> <div> <div>父元件的addName:{{addrName}}</div> <child-prop @showAddrName="updateAddrName" :sendData="addrName"></child-prop> </div> </template> <script> import childProp from "./childProp"; export default { name:'index', components: {childProp}, data () { return { addrName:"北京" } }, methods:{ updateAddrName(data){//觸發子元件城市選擇-選擇城市的事件 console.log(data); this.addrName = data.addrName;//改變了父元件的值 console.log('toCity:'+this.addrName) } } } </script>
子元件:
<template> <div> <h3>父元件傳給子元件的addrName:{{sendData}}</h3> <br/><button @click='addr(`上海`)'>點選此處將‘上海’發射給父元件</button> </div> </template> <script> export default { name:'childProp', props:["sendData"], // 用來接收父元件傳給子元件的資料 methods:{ addr(val) { let data = { addrName: val }; this.$emit('showAddrName',data);//select事件觸發後,自動觸發showCityName事件 } } } </script>
相關推薦
vue 之prop與$emit的用法
1、vue元件Prop傳遞資料: 元件例項的作用域是孤立的,這意味著不能在子元件的模板內直接引父元件的資料,如果要讓子元件使用父元件的資料,則需要通過子元件的prop選項;prop是單向繫結的,當父元件的屬性變化時,將傳遞給子元件,但是反過來不行;這樣主要是防止子元件無意
Vue之mixin全域性的用法詳解
個人覺得全域性mixin就是給全部Vue檔案新增一些公用的例項(方法,過濾器and so on) 使用場景:貨幣單位,時間格式。這些如果在用到的頁面使用的話程式碼會重複的很多,所以在全域性混入這些例項會減少程式碼量,可維護性也比較高。 ex: step1: 先定義mixin.js
vue中$on和$emit用法理解
很期待奇門遁甲這部電影,誰是老大?伍佰一開口就彷彿回到了挪威的森林、突然的自我時代,哈哈哈,且看我獨孤九劍向天涯…… 迴歸正題,在vue中有這樣的一個方法,$on,$emit,就在開發中,我用的比較多的是$emit,對,就是傳遞一個函式方法。用過的人都知道!! 今天在走查專
Vue.js之Prop基本用法(一)
①元件例項的作用域: 是孤立的,簡單的來說,元件和元件之間,即使有同名屬性,值也不共享。 <div id="app"> <add></add> <del></del> &
Vue之class的用法
隱藏 htm ... cti mob scrip head span 使用總結 Vue中class的使用總結如下: 使用形式v-bind:class 簡寫:class 1.在數組中使用一個class <!DOCTYPE html> <html la
vue之watch用法
example method cli $watch def pyc 技術 實例 ner 對應一個對象,鍵是觀察表達式,值是對應回調。值也可以是方法名,或者是對象,包含選項。在實例化時為每個鍵調用 $watch() ; //使用官方vue-cli腳手架書寫<te
vue之slot用法
highlight port one scrip 用法 har component 技術 src slot元素作為組件模板之中的內容分發插槽。這個元素自身將被替換。 有 name 特性的 slot 稱為具名 slot。 有 slot 特性的內容將分發到名字相匹配的具名 s
vue 原始碼解析 之 data的省略用法
var vu = new vue( { data() { name: kk age: 123 } }) vue中獲取 name 有如下幾種寫法, 1 vu.name 2 vu.$data.name 其實他們實際都是獲取的 vu._data.name 第一種的原始碼在 function initDa
vue之filter用法
1、全域性寫法: 全域性過濾器必須寫在vue例項建立之前。 Vue.filter('testfilter', function (value,text) { // 返回處理後的值 return value+text }) 2、區域性寫法: 在元件例項物件裡掛載。
Vue之父子元件間通訊例項講解(props、$ref、$emit)
元件是 vue.js 最強大的功能之一,而元件例項的作用域是相互獨立的,這就意味著不同元件之間的資料無法相互引用。那麼元件間如何通訊,也就成為了vue中重點知識了。這篇文章將會通過props、$ref和 $emit 這幾個知識點,來講解如何實現父子元件間通訊。 在說如何實現通訊
vue之store中屬性更新用法
//1.首先定義store物件下的屬性 state: { data:'測試資料' } // 2.定義更改data資料的方法 mutations: { updatedata(state, p) { state.data = p } } //3.在元
vue之watch的用法
最近在做一個H5的專案。 需求是當用戶在輸入完了手機號和驗證碼之後,登入按鈕才可以點選。 在沒有使用vue之前,我們可能是通過input的change事件來判斷,使用者是否輸入了內容,然後修改按鈕的狀態。現在有了vue,就省事了很多,我們只需要在watch中,
Vue之style的用法
Vue中style的用法總結如下: v-bind:style 簡寫:style 1.基本用法 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8">
angular之$broadcast、$emit、$on傳值
4.6 分享 方法 一個 ng-click onclick 技術 ctrl onf 文件層級 index.html <!DOCTYPE html> <html ng-app="nickApp"> <head>
Vue之vue.js聲明式渲染
這一 logs 類型檢測 body 表達式 頁面 渲染 strong setter Html: <div id="app"> {{ message }} </div> Vue: var app = new Vue({ el: ‘#
基礎知識之 - C# Using的用法
spa 方案 image acl 決定 ogr 托管 sid 引入 C#裏面Using有兩種用法: 1.作為指令。 using+命名空間,導入其他命名空間中定義的類型,這樣可以在程序中直接用命名空間中的類型,不必指定命名空間; 命名空間是.NET程序在邏輯上
【22】Vue 之 Vue Devtools
rom 創建 png ins -c 擴展程序 安裝 搜索 項目 vue安裝: # 最新穩定版 $ npm install vue # 全局安裝 vue-cli $ npm install --global vue-cli # 創建一個基於 webpack 模板的新項目 $
ios開發之--CAKeyframeAnimation的詳細用法
edi true nco 創建 rds repeat oval iat ima 簡單的創建一個帶路徑的動畫效果,比較粗糙,不過事先原理都是一樣的, 代碼如下: 1,創建動畫所需的view -(void)creatView { moveView = [UIView
初學安卓開發隨筆之 Menu、toast 用法、活動的四種啟動模式 以及 一個方便的Base活動類使用方法
pro 一點 cte edi standard oid nal xtend 解釋 Toast toast 是安卓系統的一種非常棒的提醒方式 首先定義一個彈出Toast的觸發點,比如可以是按鈕之類 其中 Toast.LENGTH_SHORT是指顯示時長 還有一個內置變量為To
SQL之case when then用法(用於分類統計)
char purge 格式 但是 統計 spa 比較 log 永遠 ase具有兩種格式。簡單case函數和case搜索函數。 --簡單case函數 case sex when ‘1‘ then ‘男‘ when ‘2‘ then ‘女’