vue3 mixins使用示例

首先要创建mixins.js 文件

import { ref } from "vue";

export default function () {
  let ztStyle = ref("light");

  // 定义一个方法来切换主题
  let toggleStyle = () => {
    ztStyle.value = ztStyle.value === "light" ? "dark" : "light";
  };

  return {
    ztStyle,
    toggleStyle,
  };
}

然后就可以在各个页面组件中使用

<template>
  <!-- 添加一个div来应用主题样式 -->
  <div :class="ztStyle"></div>
  <button @click="toggleStyle">mixins切换主题</button>
</template>

<script setup>
import themeMixin from "@/plugins/mixins";

const { ztStyle, toggleStyle } = themeMixin();

</script>

<style scoped>
.light {
  width: 100px;
  height: 100px;
  background-color: #ffb7b7;
  color: #000;
}

.dark {
  width: 100px;
  height: 100px;
  background-color: #e1f68e;
  color: #fff;
}
</style>

样式也可以提取到公共样式组件,这样每个地方使用的时候就可以省略style中的内容

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

温柔于心动

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

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

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

打赏作者

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

抵扣说明:

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

余额充值