版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第Vue常用實(shí)例方法示例梳理分析目錄前言vue實(shí)例方法和實(shí)例數(shù)據(jù)1、vm.$set2、vm.$delete3、vm.$watch實(shí)例方法和事件1、vm.$on2、vm.$emit3、vm.$once4、vm.$off實(shí)例方法和生命周期1、vm.$mount2、vm.$destroy3、vm.$nextTick
前言
vue實(shí)例的屬性
獲取掛載的元素--vm.$el獲取實(shí)例的初始化選項(xiàng)的對象--vm.$options獲取觀察的數(shù)據(jù)對象--vm.$data一對象,可持有的注冊過ref屬性的所有DOM元素和組件實(shí)例
vue實(shí)例方法和實(shí)例數(shù)據(jù)
1、vm.$set
這個實(shí)例方法又是Vue.set方法的別稱,它的功能是新增屬性,因?yàn)関ue沒有辦法探測到普通的新增函數(shù)屬性,所以我們通過使用vm.$set這個方法可以使得vue探測到。
2、vm.$delete
這個方法又是vue,delete的方法的別名,它的功能是刪除對象的屬性,vue通過這個方法刪除屬性,可以探測到。
3、vm.$watch
這個實(shí)例方法用于觀察實(shí)例中一個表達(dá)式或者一個函數(shù)計(jì)算結(jié)果餓變化,有變化,就函數(shù)回調(diào),回調(diào)的函數(shù)就是得到的參數(shù)為新的值和舊的值。
我們可以通過一段代碼實(shí)例了解一下這個部分:
代碼實(shí)例:
!DOCTYPEhtml
htmllang="en"
head
titlemethods/title
/head
body
divid="app"
button增加/button
button刪除/button
h3你想要的東西:{{}}/h3
價(jià)格:inputtype="text"v-model.number="price"/br
數(shù)量:inputtype="number"v-model="count"/br
總和:inputtype="text"v-model="total"/br
/div
scriptsrc="/vue/2.2.2/vue.min.js"/script
script
varvm=newVue({
el:'#app',
data:{
goods:{},
price:0,
count:1,
total:0
functionaddName(){
Vue.set(vm.goods,'name','漫畫書');
functiondeleteName(){
if(){
vm.$delete(vm.goods,'name');
vm.$watch('price',function(newVal,oldVal){
returnthis.total=newVal*this.count;
vm.$watch('count',function(newVal,oldVal){
returnthis.total=newVal*this.price;
/script
/body
/html
運(yùn)行結(jié)果:
每次按下增加按鈕的時候,就會顯示{{}}里面的漫畫書,當(dāng)按下刪除的時候{{}}就會顯示為空;當(dāng)價(jià)格和數(shù)量改變的時候,總的價(jià)格也會跟著改變。
實(shí)例方法和事件
1、vm.$on
這個實(shí)例方法可以用于監(jiān)聽vue實(shí)例里面的自定義事件,這些事件都是通過vm.$emit觸發(fā)的,回調(diào)函數(shù)會接收所有傳入的時間觸發(fā)函數(shù)的額外的參數(shù)。
2、vm.$emit
這個實(shí)例方法通過觸發(fā)當(dāng)前實(shí)例上的事件,其中的附加的參數(shù)都會傳給到監(jiān)聽器進(jìn)行函數(shù)回調(diào)。
3、vm.$once
這個實(shí)例方法功能是監(jiān)聽一個自定義的事件,但是只能觸發(fā)一次,一旦觸發(fā)了,監(jiān)聽器就會被溢出。
4、vm.$off
這個實(shí)例方法的功能是移除一個自定義的監(jiān)聽器。
我們通過代碼的方式了解一下:
實(shí)例代碼:
!DOCTYPEhtml
htmllang="en"
head
titlemethods/title
/head
body
divid="app"
button@click="zengjia"增加/button
{{num}}
button減少/button
button解除減少操作事件/button
/div
scriptsrc="/vue/2.2.2/vue.min.js"/script
script
varvm=newVue({
el:'#app',
data:{
num:100
methods:{
zengjia:function(){
this.num++;
vm.$on("reduce",function(step){
vm.num=step;
functionjianshao(){
vm.$emit("reduce",2);
functionoff(){
vm.$off("reduce");
/script
/body
/html
運(yùn)行結(jié)果:每次單擊減少按鈕的時候,數(shù)值就會減少;當(dāng)單擊解除減少操作事件,在點(diǎn)擊減少,數(shù)值已經(jīng)不會再改變了。
實(shí)例方法和生命周期
1、vm.$mount
這個實(shí)例方法功能是:如果實(shí)例在沒有收到el選項(xiàng)的時候,就會處于沒有掛載的狀態(tài),因?yàn)闆]有和它關(guān)聯(lián)的DOM元素??梢允褂眠@個mount方法進(jìn)行手動掛載。
2、vm.$destroy
這個實(shí)例地方法主要用于完全摧毀一個實(shí)例,清除和其他實(shí)例的連接,并且解除全部指令以及事件監(jiān)聽器。
3、vm.$nextTick
這個實(shí)例方法中的回調(diào)函數(shù)延遲到DOM更新后才能執(zhí)行,但是如果在vue生命周期里面的created鉤子函數(shù)進(jìn)行的DOM事件的話,那么就要放在.nextTick的回調(diào)函數(shù)中??梢栽跀?shù)據(jù)變化之后立刻使用.nextTick,這樣回調(diào)函數(shù)在DOM更新完成之后就可以進(jìn)行函數(shù)調(diào)用。
我們通過代碼實(shí)例來理解:
實(shí)例代碼:
!DOCTYPEhtml
htmllang="en"
head
titlemethods/title
/head
body
divid="app"
h2ref="first"{{first}}/h2
h3ref="secnd"{{second}}/h3
inputtype="text"v-model="msg"
p{{msg}}/p
button銷毀/button
/div
scriptsrc="/vue/2.2.2/vue.min.js"/script
script
letvm=newVue({
data:{
msg:"看到你就煩",
first:'1',
second:'2',
vm.$mount('#app');
vm.first='丘比特';
vm.second=vm.$refs.first.textContent;
console.log(vm.second);
Vue.nextTick(function(){
vm.second=vm.$refs.first.textContent;
console.log(vm.second);
functiondes
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職通信技術(shù)(移動通信基礎(chǔ))試題及答案
- 2025年高職中草藥栽培與加工技術(shù)(中藥炮制基礎(chǔ))試題及答案
- 2025年大學(xué)(麻醉學(xué))麻醉心理學(xué)試題及答案
- 2025年中職航空服務(wù)(客艙服務(wù)實(shí)務(wù))試題及答案
- 2025年中職(煙草栽培)煙草大田移栽階段測試試題及答案
- 2025年大學(xué)醫(yī)學(xué)影像技術(shù)(CT影像診斷)試題及答案
- 2025年中職(農(nóng)產(chǎn)品營銷與儲運(yùn))農(nóng)產(chǎn)品儲存試題及答案
- 2025年中職物流類(物流故障處理)試題及答案
- 2025年大學(xué)化學(xué)工程與工藝(化工系統(tǒng)工程)試題及答案
- 2025年中職人工智能類(人工智能基礎(chǔ)常識)試題及答案
- 2025秋蘇教版(2024)小學(xué)科學(xué)二年級上冊(全冊)教學(xué)設(shè)計(jì)(附目錄P123)
- 光伏基礎(chǔ)吊裝施工方案
- 專題05病句辨析與修改-2023年小升初語文高頻考點(diǎn)100題(部編版)
- 合肥市瑤海區(qū)S社區(qū)居家養(yǎng)老服務(wù)站建設(shè)研究:現(xiàn)狀、問題與優(yōu)化路徑
- 果園防草布采購合同范本
- 《黃土原位測試規(guī)程》
- 冀教版(2024)三年級上冊《稱量物體》單元測試(含解析)
- 數(shù)學(xué)-湖南長郡中學(xué)、杭州二中、南師附中三校2025屆高三4月聯(lián)考試題+答案
- 醫(yī)學(xué)三維可視化與虛擬現(xiàn)實(shí)技術(shù):革新肝癌腹腔鏡手術(shù)的探索與實(shí)踐
- 統(tǒng)編版(2024)八年級上冊歷史新教材全冊知識點(diǎn)復(fù)習(xí)提綱
- 水平定向鉆施工技術(shù)應(yīng)用與管理
評論
0/150
提交評論