




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
組件02數據傳遞03自定義事件04內容分發05動態組件AI輔助編程06注冊組件01注冊組件注冊全局組件注冊局部組件注冊全局組件ponent(tagName,options)定義的組件名稱組件的選項對象語法格式
<tagName></tagName>使用組件的方式注冊全局組件<divid="app"><demo></demo></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">constvm=Vue.createApp({});ponent('demo',{template:'<h2>天才出于勤奮</h2>'});vm.mount('#app');</script>注冊全局組件<divid="app"><demo></demo></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">constvm=Vue.createApp({});ponent('demo',{template:`<div><p>靜夜思</p><div>床前明月光,</div><div>疑是地上霜。</div><div>舉頭望明月,</div><div>低頭思故鄉。</div></div>`});vm.mount('#app');</script>注冊全局組件<divid="app"><count-button></count-button><count-button></count-button><count-button></count-button></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">
const
vm=Vue.createApp({});
ponent('count-button',{data(){return{count:0}},template:'<buttonv-on:click="count++">{{count}}</button>'});
vm.mount('#app');</script>注冊局部組件components使用選項<divid="app"><demo></demo></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">constvm=Vue.createApp({components:{'demo':{template:'<h2>目標越接近,困難越增加。</h2>'}}}).mount('#app');</script>注冊局部組件<divid="app"><parent></parent></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">varChild={template:'<h2>人不學,不知道。</h2>'}varParent={template:`<div><h2>玉不琢,不成器。</h2><child></child></div>`,components:{'child':Child}}constvm=Vue.createApp({components:{'parent':Parent}}).mount('#app');</script>什么是Prop傳遞動態PropProp驗證數據傳遞什么是Prop<divid="app"><demotext="黑夜無論怎樣悠長,白晝總會到來。"></demo></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">constvm=Vue.createApp({components:{'demo':{props:['text'],template:'<h3>{{text}}</h3>'}}}).mount('#app');</script>實現父子組件之間數據的傳遞props使用選項傳遞動態Prop
應用動態Prop傳遞數據,輸出影片的圖片、名稱和類型等信息。實例Prop驗證基礎類型檢測props:{propA:String}參數默認props:{propD:{type:Number,default:100}}多種類型props:{propB:[String,Number]}參數必須props:{propC:{type:String,required:true}}自定義驗證函數props:{propE:{validator:function(value){returnvalue>0;}}}自定義事件自定義事件的監聽和觸發將原生事件綁定到組件自定義事件的監聽和觸發vm.$emit(eventName,[…args])傳入事件的名稱觸發事件傳遞的參數語法格式
$emit()方法自定義事件的監聽和觸發
在頁面中定義一個按鈕和一行文本,通過單擊按鈕實現設置文本間距的功能。實例自定義事件的監聽和觸發
在頁面中制作一個簡單的導航菜單效果。實例將原生事件綁定到組件<divid="app"><demo:style="show"v-on:mouseover="setWeight('bold')"v-on:mouseout="setWeight('')"></demo></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">constvm=Vue.createApp({data(){return{size:'20px',weight:'',cursor:'pointer‘}},methods:{setWeight:function(value){this.weight=value;}},computed:{show:function(){return{fontSize:this.size,fontWeight:this.weight,cursor:this.cursor}}}});ponent('demo',{template:'<span>非淡泊無以明志,非寧靜無以致遠。</span>'})vm.mount('#app');</script>內容分發基礎用法編譯作用域默認內容命名插槽作用域插槽基礎用法<divid="app"><demo-slot>{{msg}}</demo-slot></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">
const
vm=Vue.createApp({data(){return{
msg:'真誠是一種心靈的開放。'}}});
ponent('demo-slot',{template:`<divclass="content"><slot></slot></div>`})
vm.mount('#app');</script>渲染結果<div
class="content">
真誠是一種心靈的開放</div><slot>元素編譯作用域<divid="app"><demo-slot>{{msg}}</demo-slot></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">
const
vm=Vue.createApp({});
ponent('demo-slot',{data(){return{
msg:'真誠是一種心靈的開放。'}},template:`<divclass="content"><slot></slot></div>`})
vm.mount('#app');</script>渲染結果<divclass="content">
</div>默認內容<divid="app"><my-checkbox>{{text}}</my-checkbox></div><scriptsrc="/vue@3"></script><scripttype="text/javascript">
const
vm=Vue.createApp({data(){return{text:'已閱讀并同意服務條款'}}});
ponent('my-checkbox',{template:`<div><inputtype="checkbox"><slot>閱讀并同意服務條款</slot></div>`})
vm.mount('#app');</script>命名插槽<slot>元素的name屬性v-slot指令值作為其參數具名插槽
在頁面中輸出個人信息,包括姓名、性別、年齡、職位和興趣愛好,并將姓名作為默認插槽的內容。實例作用域插槽<slot>元素的屬性插槽Prop為v-slot設置一個包含所有插槽Prop的對象的名稱作用域插槽<divid="app"><demo-slot><templatev-slot:default="slotProps">
人物姓名:{{slotProps.pname}}<br>
代表作品:{{slotProps.works}}</template></demo></div><scriptsrc=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 光纖折射率剖面微流控集成技術考核試卷
- 樂器結構動力學的多物理場耦合分析考核試卷
- 光伏發電在綠色建筑中的安全性評估考核試卷
- 化工工程標準化與國際貿易法規的關系考核試卷
- 易貨貿易講師考試試題及答案
- 光玻璃的折射率變化特性分析考核試卷
- 新兵戰術基礎考試試題及答案
- 廣州農商行面試題及答案
- 道路泥濘面試題及答案
- 統一大市場中能源市場協同發展
- 河南省鄭州市鞏義市2023-2024學年六年級下學期科學6月期末試卷(含答案)
- 2024年山西特崗教師招聘筆試真題
- 【英語 北京版】2025年普通高等學校招生選擇性考試含答案
- 黑龍江省哈爾濱市第九中學校2024-2025學年高一下學期6月月考化學試題(含答案)
- 2025-2030年中國低溫超導材料行業市場深度調研及發展前景與投資戰略研究報告
- 二手車跨境交易平臺創新創業項目商業計劃書
- 2023-2024學年浙江省寧波市慈溪市四年級(下)期末數學試卷
- 2025年黑龍江、吉林、遼寧、內蒙古高考生物真題試卷(解析版)
- 阿米巴模式的合同協議書
- 新聞記者采編報導人員崗位從業資格考試題含答案
- 對公客戶經理培訓課件
評論
0/150
提交評論