好消息:用 vue3+layui 共同铸造我们新的项目

前言:

        layui这个框架不知道多少人还在关注着,记得第一次接触它是在18年,后来随着vue,react的盛行,jquery+layui的模式受到了特别大的冲击,后来作者都放弃维护他的官方网站,转而在github/gitee上做后期维护了,但是现在好消息,他又升级了,现在可以在vue3上使用他了,而且功能更加强大,对比element/iview/antd  这些流行框架,他也有很多自己的特色。从2022.9开始发布稳定版本的它,在经历了风雨后,也将绽放他的魅力!

gitee官方地址 :

layui-vue: layui - vue 是 一 套 Vue 3.0 的 桌 面 端 组 件 库.icon-default.png?t=N7T8https://gitee.com/layui/layui-vue?_from=gitee_search

layui-vue3的官方地址:

Layui - Vue 前端 UI 框架icon-default.png?t=N7T8http://www.layui-vue.com/zh-CN/components/qrcode

特色功能

1、内嵌了各种异常场景

Layui - Vue 前端 UI 框架

2、条形码,不用你额外下载插件,它本身就支持了

具体使用步骤:

1、安装
npm install @layui/layui-vue --save
2、全局注册
import App from './App.vue'
import { createApp } from 'vue'
import Layui from '@layui/layui-vue'
import '@layui/layui-vue/lib/index.css'

createApp(App).use(Layui).mount('#app')
3、按需加载

首先你需要安装 unplugin-vue-components 和 unplugin-auto-import 两款插件。

npm install -D unplugin-vue-components unplugin-auto-import

然后修改 vite.config.js 或 vue.config.js 的配置。

import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { LayuiVueResolver } from 'unplugin-vue-components/resolvers'

export default {
  plugins: [
    AutoImport({
      resolvers: [LayuiVueResolver()],
    }),
    Components({
      resolvers: [LayuiVueResolver()],
    }),
  ],
}
4、页面上使用
<lay-button type="primary" @click="openMsg">普通消息</lay-button>

好的,以下是一个 Vue 3 + Layui 实现的四级联动,第一级改变后清空后面选项的代码示例: ```html <template> <div class="layui-form"> <div class="layui-form-item"> <label class="layui-form-label">省份</label> <div class="layui-input-inline"> <select v-model="selectedProvince" @change="handleProvinceChange"> <option value="">请选择省份</option> <option v-for="province in provinces" :value="province">{{ province.name }}</option> </select> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">城市</label> <div class="layui-input-inline"> <select v-model="selectedCity" @change="handleCityChange"> <option value="">请选择城市</option> <option v-for="city in cities" :value="city">{{ city.name }}</option> </select> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">区县</label> <div class="layui-input-inline"> <select v-model="selectedDistrict"> <option value="">请选择区县</option> <option v-for="district in districts" :value="district">{{ district.name }}</option> </select> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">乡镇</label> <div class="layui-input-inline"> <select v-model="selectedTown"> <option value="">请选择乡镇</option> <option v-for="town in towns" :value="town">{{ town.name }}</option> </select> </div> </div> </div> </template> <script> export default { data() { return { provinces: [ { id: 1, name: '广东省' }, { id: 2, name: '湖南省' }, // TODO: 其他省份 ], cities: [], districts: [], towns: [], selectedProvince: null, selectedCity: null, selectedDistrict: null, selectedTown: null, }; }, methods: { handleProvinceChange() { this.selectedCity = null; this.selectedDistrict = null; this.selectedTown = null; this.loadCities(); }, handleCityChange() { this.selectedDistrict = null; this.selectedTown = null; this.loadDistricts(); }, loadCities() { // TODO: 根据当前选中的省份加载城市列表 }, loadDistricts() { // TODO: 根据当前选中的城市加载区县列表 }, loadTowns() { // TODO: 根据当前选中的区县加载乡镇列表 }, }, watch: { selectedCity: function () { this.loadDistricts(); }, selectedDistrict: function () { this.loadTowns(); }, }, }; </script> ``` 在上述代码中,我们使用了 Vue 3 的数据绑定和事件监听功能,通过 v-model 指令绑定了每个选择框的选中值。当省份选择框的值发生改变时,我们清空了城市、区县和乡镇选择框的选项,并调用了加载城市列表的方法(loadCities)。当城市选择框的值发生改变时,我们清空了区县和乡镇选择框的选项,并调用了加载区县列表的方法(loadDistricts)。当区县选择框的值发生改变时,我们调用了加载乡镇列表的方法(loadTowns)。同时,我们使用了 Layui 的表单组件,使页面看起来更加美观。在实际应用中,您需要根据需求修改数据和方法,并实现相应的加载数据的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

浩星

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

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

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

打赏作者

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

抵扣说明:

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

余额充值