【Vue3】Mixin

setup写法

新建一个js文件mixin.js

import {ref} from 'vue'
export default function(){
   //定义变量
   let num = ref(1)
   //定义方法
   let favBtn = ()=>{
      num.value += 1
   }
   //把内容返回出去
   return{
      num,
      favBtn
   }
}

Vue中引入Mixin

<template>
   <div>
      <p>这是A组件</p>
      <span>{{num}}</span>
      <button @click="favBtn">+1</button>
   </div>
</template>
<script setup>
   import mixin from '../mixin/minx'
   //解构mixin.js中的数据
   let { num,favBtn } = mixin()
</script>

或者

<template>
   <div>
      <p>这是A组件</p>
      <span>{{fav_vue.num}}</span>
      <button @click="fav_vue.favBtn">+1</button>
   </div>
</template>
<script>
   import fav from '../mixin/minx'
   export default{
      data(){
         return{
            fav_vue :fav()
         }
      },
   }
</script>

选项式API写法

mixin.js

export const fav = {
   data(){
      return{
         num:1
      }
   },
   methods:{
      favBtn(){
         this.num += 1
      }
   }
}

Vue

<template>
   <div>
      <p>这是A组件</p>
      <span>{{num}}</span>
      <button @click="favBtn">+1</button>
   </div>
</template>
<script>
   import {fav} from '../mixin/minx'
   export default{
      data(){
         return{
         }
      },
      mixins:[fav],
   }
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SamRol

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值