亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue實現(xiàn)公共方法抽離

 更新時間:2020年07月31日 11:32:51   作者:孫華鵬  
這篇文章主要介紹了vue實現(xiàn)公共方法抽離,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

demo:制作一個點擊按鈕增加或者減少數(shù)字

現(xiàn)在vue組件內(nèi)部測試一下功能

<template>
<div class="all">
<p>還未抽離</p>
<button @click="SubNum()">-</button>
<input type="number" v-model="number">
<button @click="AddNum()">+</button>
</div>
</template>

<script>
export default {
data() {
return {
number: 0
};
},
methods: {
SubNum() {
this.number--;
if (this.number <= 0) {
this.number = 0;
}
},
AddNum() {
this.number++;
if (this.number > 10) {
this.number = 10;
}
}
}
};
</script>

效果還可以,至少方法是對的,接下來進行方法抽離和傳送參數(shù)

首先新建一個js文件 common.js

用es6的export default將方法導出

export default {
AddNum:function(){
console.log(1)
},
SubNum:function(){
console.log(2)
}
}

在main.js中用import將文件導入

import Common from './common'

聲明全局common

Vue.prototype.common = Common

現(xiàn)在組件內(nèi)只剩button和input,方法已經(jīng)剪切出去

<template>
<div class="all">
<p>即將抽離</p>
<button @click="common.SubNum()">-</button>
<input type="number" v-model="number">
<button @click="common.AddNum()">+</button>
</div>
</template>

<script>
export default {
data() {
return {
number: 0
};
},
methods: {}
};
</script>

<style lang="scss" scoped type="text/css">
</style>

點擊打印1或者2

證明方法是行得通的,現(xiàn)在將組件內(nèi)的參數(shù)傳送到方法里

傳參通過鉤子函數(shù)內(nèi)傳過去,因為要綁定點擊事件,所以直接在methods定義一個方法

<template>
<div class="all">
<p>已經(jīng)抽離</p>
<button @click="add(booleans)">-</button>
<input type="number" v-model="number">
<button @click="add(!booleans)">+</button>
</div>
</template>

<script>
export default {
data() {
return {
number: 0,
booleans: false
};
},
mounted() {},
methods: {
//判斷點擊的是加還是減
add(booleans) {
this.number = this.common.func(this.number,booleans);
}
}
};
</script>

<style lang="scss" scoped type="text/css">
</style>

這時公共方法已經(jīng)簡化,這樣的話 在組件中看的比較簡潔

export default {
func(num,booleans){
if(booleans){
num++
if(num>=10){
return 10
}
}else{
num--
if(num<=0){
return 0
}
}
return num
}
}

<--------文末------------>

有一個坑

<button @click="common.SubNum(number)">-</button>
<input type="number" v-model="number">
<button @click="common.AddNum(number)">+</button>
//

export default {
AddNum:function(num){
num++
if(num>=10){
return 10
}
console.log(num)
return num
},
SubNum:function(num){
num--
if(num<=0){
console.log(num)
return 0
}
return num
}
}

這個是剛開始抽離方法 直接在@click內(nèi)傳參

但是點擊事件并沒有將input的內(nèi)容修改

我的理解是只是將參數(shù)傳到方法里 但是方法改變參數(shù)時并未改變input綁定的this.number

不知道各位大神有什么見解或者建議,共同學習,希望能給大家一個參考,也希望大家多多支持腳本之家!

相關文章

  • Vue自定義全局Toast和Loading的實例詳解

    Vue自定義全局Toast和Loading的實例詳解

    這篇文章主要介紹了Vue自定義全局Toast和Loading,需要的朋友可以參考下
    2019-04-04
  • vue報錯之exports is not defined問題的解決

    vue報錯之exports is not defined問題的解決

    這篇文章主要介紹了vue報錯之exports is not defined問題的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Vue3?中路由Vue?Router?的使用實例詳解

    Vue3?中路由Vue?Router?的使用實例詳解

    vue-router是vue.js官方給出的路由解決方案,能夠輕松的管理SPA項目中組件的切換,這篇文章主要介紹了Vue3?中路由Vue?Router?的使用,需要的朋友可以參考下
    2023-02-02
  • 詳解vue.js的事件處理器v-on:click

    詳解vue.js的事件處理器v-on:click

    本篇文章主要介紹了詳解vue.js的事件處理器v-on:click,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • vue2+elementUI的el-tree的選中、高亮、定位功能的實現(xiàn)

    vue2+elementUI的el-tree的選中、高亮、定位功能的實現(xiàn)

    這篇文章主要介紹了vue2+elementUI的el-tree的選中、高亮、定位功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • Vue3 編寫自定義指令插件的示例代碼

    Vue3 編寫自定義指令插件的示例代碼

    這篇文章主要介紹了Vue3 編寫自定義指令插件的示例代碼,主要包括編寫自定義插件,在 main.ts 中加載啟用插件的代碼介紹,對Vue3自定義指令插件相關知識感興趣的朋友一起看看吧
    2022-07-07
  • 詳解vue-cli3使用

    詳解vue-cli3使用

    這篇文章主要介紹了詳解vue/cli 3使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • Vue3中關于ref和reactive的區(qū)別分析

    Vue3中關于ref和reactive的區(qū)別分析

    這篇文章主要介紹了vue3關于ref和reactive的區(qū)別分析,文中通過示例代碼介紹的非常詳細,具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-06-06
  • 使用electron-builder將項目打包成桌面程序的詳細教程

    使用electron-builder將項目打包成桌面程序的詳細教程

    這篇文章主要介紹了使用electron-builder把web端的項目打包生成桌面程序,并可安裝程序,文中通過代碼示例和圖文結合的方式給大家介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2024-08-08
  • vue項目中如何將當前頁面生成圖片

    vue項目中如何將當前頁面生成圖片

    這篇文章主要介紹了vue項目中如何將當前頁面生成圖片問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評論