
vue3
文章平均质量分 68
沉迷...
这个作者很懒,什么都没留下…
展开
-
封装pinia并引入pinia持久化工具(pinia-plugin-persistedstate)
封装pinia并引入pinia持久化工具(pinia-plugin-persistedstate)原创 2025-05-03 14:02:52 · 432 阅读 · 0 评论 -
自动导入ref reactive route等vue的Composition API,减少样板代码和提高开发效率
unplugin-auto-import是一个用于Vue 3(Composition API)的插件,主要功能是自动导入代码中使用的模块和函数,从而减少样板代码和提高开发效率。该插件支持Vue Composition API函数(如ref、reactive、computed等)以及来自其他库的函数(如Vue Router的useRoute、useRouter,Pinia的defineStore等)unplugin-vue-components:Vue 的按需组件自动导入。原创 2025-05-03 10:00:00 · 240 阅读 · 0 评论 -
vue3+ts vite打包结构控制通过rollup进行配置
vue3+ts vite打包结构控制通过rollup进行配置 使用output.entryFileNames 配置入口文件的打包输出。导入的/build/vite/build。原创 2025-05-03 09:00:00 · 208 阅读 · 0 评论 -
vue3+ts项目 配置vue-router以及router-link激活时一些激活类的操作
vue3+ts项目 配置vue-router以及router-link激活时一些激活类的操作原创 2025-05-02 16:50:53 · 283 阅读 · 0 评论 -
配置代码质量工具(Prettier、ESLint、Stylelint)配置ctrl+s保存后自动修复
在遇到 .js 、 .jsx 、.ts 、.tsx 、.json 、.html 、.md 、 .css 、 .less 、 .scss 为后缀的文件时,都会去使用 Prettier 去格式化代码,而格式化的规则就是我们配置的 .prettierrc 决定的!现配置文件更改为eslint.config.js|eslint.config.cjs|eslint.config.mjs。.stylelintrc.json、.stylelintrc.yml 或 .stylelintrc.yaml 文件。原创 2025-05-02 09:30:00 · 1717 阅读 · 0 评论 -
README.md文档如何添加丰富多彩的badge标识,五颜六色的tag标签
依次填完 label,message,color 三个参数之后,点击 Make Badge,此时页面会跳转到一个新页面,你需要的就是复制新页面的地址为自己所用;vuejs/vue: 用户的某个项目的stars数量;如果不带/vue则是用户获取的stars数量。我们在user参数中输入vuejs/vue 输入后点击执行就可以生成了。以下内容以获取github上的vue项目的stars为例。Ritusan:Author对应的值,换成你自己的;Author:可以换成你想展示的label文字;原创 2025-04-30 16:29:08 · 303 阅读 · 0 评论 -
vite创建vue3项目并进行配置及vue3项目结构介绍
创建项目vue3+ts 项目,锁定node版本 与pnpm版本,tsconfig.json和tsconfig.node.json和tsconfig.app.json有什么区别 .npmrc README.md(包含五颜六色的tag标签) 配置vue-router 自动导入ref reactive route等vue的Composition API,减少样板代码和提高开发效率 vue3+ts vite打包结构控制通过rollup进行配置 配置@/开头的路径别名 封装pinia并引入pinia持久化工具(pi原创 2025-04-28 17:54:30 · 720 阅读 · 0 评论 -
tsconfig.json和tsconfig.node.json和tsconfig.app.json有什么区别
是三个不同的TypeScript配置文件,它们分别用于不同的场景和目的。其中tsconfig.node.json是专门用来配置vite.config.ts文件的编译规则,tsconfig.app.json则是用来定义项目中其他文件的ts编译规则。这个配置文件适用于整个项目,包括Vue组件、JavaScript文件和其他TypeScript文件。它包含了Node.js特有的配置,如模块解析规则、类型检查规则等。它包含了Vue组件特有的配置,如模块解析规则、类型检查规则等。在Vue 3项目中,原创 2025-04-27 18:31:22 · 438 阅读 · 0 评论 -
vue高级组件封装 element组件二次封装
【代码】vue高级组件封装 element组件二次封装。原创 2025-01-24 15:43:45 · 634 阅读 · 0 评论 -
vue自定义指令及常用的自定义指令封装
本文主要是vue2以及vue3自定义指令的定义及使用,包含一些常用自定义指令的写法原创 2023-12-12 09:00:58 · 1545 阅读 · 0 评论 -
vue3中如何实现事件总线eventBus
由于vue3中 “$ on”,$ off 和 $ once 实例方法已被移除,组件实例不再实现事件触发接口 所以我们可以使用官方推荐的这个第三方库实现同样的效果。全局总线,vue 入口文件 main.js 中挂载全局属性。点击 按钮 b组件中的数值增加。main.ts 初始化。原创 2023-12-02 13:30:23 · 1902 阅读 · 0 评论 -
vue中的动画组件使用及如何在vue中使用animate.css
vue中中的动画组件使用及如何在vue中使用animate.css原创 2023-12-02 13:00:00 · 2164 阅读 · 0 评论 -
vite使用vue3 v-for渲染图片时的写法
【代码】vite使用vue3 v-for渲染图片时的写法。原创 2023-06-04 22:04:36 · 1731 阅读 · 1 评论 -
element -plus vite构建的项目如何修改element Plus的主题样式
【代码】修改element Plus的主题样式。原创 2023-05-29 23:12:58 · 1481 阅读 · 0 评论 -
viet构建项目及<script setup>的用法
全局注册的自定义指令将以符合预期的方式工作,且本地注册的指令可以直接在模板中使用,就像上文所提及的组件一样。但这里有一个需要注意的限制:必须以 vNameOfDirective 的形式来命名本地自定义指令,以使得它们可以直接在模板中使用// 在元素上做些操作 } } < template > < h1 v-my-directive > This is a Heading const。原创 2023-05-20 16:50:34 · 1017 阅读 · 0 评论 -
vue3手动封装弹出框组件message
vue3手动封装弹出框组件message封装组件<template> <Transition name="down"> <div class="xtx-message" :style="style[type]" v-show='isShow'> <!-- 上面绑定的是样式 --> <!-- 不同提示图标会变 --> <i class="iconfont" :class="[style[typ原创 2021-09-24 14:49:54 · 997 阅读 · 0 评论 -
vue3 手动封装分页组件
vue3 手动封装分页组件效果如下分页组件<template> <div class="xtx-pagination"> <a @click='changePage(false)' href="javascript:;" :class="{disabled: currentPage===1}">上一页</a> <span v-if='currentPage > 3'>...</span> <原创 2021-09-23 20:03:52 · 360 阅读 · 1 评论 -
选项卡效果 点击切换选项
<a @click='changeCondition(index)' :class='{active: currentIndex===index}' v-for='(item, index) in conditions.tags' :key='index' href="javascript:;">{{item.title}}({{item.tagCount}})</a>// 选中筛选条件的索引const currentIndex = ref(0)const changeCon原创 2021-09-22 16:06:32 · 149 阅读 · 0 评论 -
vue3 封装购物网站查看图片放大镜效果组件
效果如下:组件封装<template> <div class="goods-image"> <!-- 预览大图 --> <div class="large" :style='[{backgroundImage: `url(${images[currIndex]})`}, bgPosition]' v-show='isShow'></div> <div class="middle" ref='target'&原创 2021-09-21 15:35:41 · 445 阅读 · 2 评论 -
vue3 封装下拉更新组件
vue3 封装下拉更新组件组件封装<template> <div class="xtx-infinite-loading" ref="container"> <div class="loading" v-if="loading"> <span class="img"></span> <span class="text">正在加载...</span> </div>原创 2021-09-19 19:28:45 · 445 阅读 · 0 评论 -
vue3 自动批量注册公共组件
自动批量注册组件思路分析使用 require 提供的函数 context 加载某一个目录下的所有 .vue 后缀的文件。然后 context 函数会返回一个导入函数 importFn它有一个属性 keys() 获取所有的文件路径通过文件路径数组,通过遍历数组,再使用 importFn 根据路径导入组件对象遍历的同时进行全局注册即可具体代码// 其实就是vue插件,扩展vue功能,全局组件、指令、函数 (vue.30取消过滤器)// 当你在mian.js导入,使原创 2021-09-17 19:28:33 · 892 阅读 · 0 评论 -
vue3封装自定义指令 实现图片懒加载
vue3封装自定义指令 实现图片懒加载主要使用的api:IntersectionObserver// 创建观察对象实例// const observer = new IntersectionObserver(callback[, options])const obs = new IntersectionObserver(([{isIntersecting}], observer) => { // entries = [{isIntersecting: true}] },原创 2021-09-16 21:13:38 · 334 阅读 · 2 评论 -
vue自定义动画 以及animation包在vue中的使用
vue动画自定义动画当vue中,显示隐藏,创建移除,一个元素或者一个组件的时候,可以通过transition实现动画。如果元素或组件离开,完成一个淡出效果:<transition name="fade"> <p v-if="show">100</p></transition>.fade-leave { opacity: 1}.fade-leave-active { transition: all 1s;}.fade-原创 2021-09-15 11:23:35 · 1970 阅读 · 0 评论 -
vue3 hook组件数据懒加载
vue3 hook组件数据懒加载// const {stop} = useIntersectionObserver(target, fn, options)// 1、参数一target表示被监听的DOM元素// 2、参数二是回调函数,用于通知监听的动作(回调函数的第一个形参isIntersecting表示被监听的元素已经进入了可视区)// 3、表示配置选项// stop 是停止观察是否进入或移出可视区域的行为 const { stop } = useIntersectionObserver原创 2021-09-15 10:07:56 · 409 阅读 · 0 评论 -
less的自动化导入 对常用less变量进行自动化导入
less的自动化导入安装插件在当前项目下执行一下命令vue add style-resources-loader,添加一个vue-cli的插件安装完毕后在vue.config.js中自动添加配置module.exports = { pluginOptions: { 'style-resources-loader': { preProcessor: 'less', patterns: [] } }}把需要注入的文件配置一下后,重启服务即可cons原创 2021-09-14 20:35:54 · 705 阅读 · 0 评论 -
vuex状态持久化
vuex状态持久化安装vuex的插件npm i vuex-persistedstate在store的index.js中进行配置import { createStore } from 'vuex'// 全局模块import global from './modules/global'// 局部模块import cart from './modules/cart'import createPersistedstate from 'vuex-persistedstate'export de原创 2021-09-14 20:14:58 · 218 阅读 · 0 评论 -
Vue3封装轮播图组件
具体组件代码:<template> <div class="xtx-carousel" @mouseleave="start" @mouseenter="stop"> <!-- 轮播图列表 --> <ul class="carousel-body"> <li class="carousel-item " v-for="(item, i) in sliders" :key="i" :class="{ fade: index原创 2021-09-14 14:09:02 · 809 阅读 · 0 评论 -
vue3封装骨架效果的组件
组件代码骨架效果主要是用在数据没有请求回来之前 使用骨架占据数据化得位置 如果数据请求回来了 这替换掉骨架 这样用户的体验效果会更好<template> <div class="xtx-skeleton" :style="{width,height}" :class="{shan:animated}"> <!-- 1 盒子--> <div class="block" :style="{backgroundColor:bg}">&l原创 2021-09-13 21:13:14 · 320 阅读 · 0 评论 -
实现组件原生和第三方吸顶效果交互实现
通过滚动事件的触发,在回调函数里判断当前是否已经滚动了78px,如果大于则添加类名,否则移除类名document.documentElement.scrollTop 获取滚动距离:class 动态控制类名显示+ setup () {+ const top = ref(0)+ window.onscroll = () => {+ const scrollTop = document.documentElement.scrollTop+ .原创 2021-09-13 18:28:16 · 297 阅读 · 0 评论 -
Vue3 组件通讯 组件传值
vue3 组件通讯父子通讯父传子父组件向子组件传递数据:自定义属性 props子组件向父组件传递数据 : 自定义事件 $emit()子组件模板中直接可以获取props中的属性值js代码中需要通过setup函数的第一个形参props获取属性值父组件:<template> <div> <div>父子组件的交互</div> <button @click='money=200'>修改</button>原创 2021-09-11 14:22:24 · 471 阅读 · 1 评论 -
vue3 ref属性
vue3 ref属性操作单个DOM元素操作单个DOM或者组件的流程定义一个响应式变量把变量返回给模板使用模板中绑定上述返回的数据可以通过info变量操作DOM或者组件实例<template> <div> <div>ref操作DOM和组件</div> <hr> <!-- 3、模板中绑定上述返回的数据 --> <div ref='info'>hello</div&g原创 2021-09-10 20:33:36 · 3498 阅读 · 0 评论 -
vue3组合api 响应式数据 ref toRef toRefs reactive
vue3组合api 响应式数据 ref toRef toRefs reactiveref函数ref函数,常用于简单数据类型定义为响应式数据作用: 定义一个响应式的数据语法: const xxx=ref(initvalue)创建一个包含响应式数据的引用对象 (refernce对象 简称ref对象)js操作数据 : xxx.value模板中读取数据: 不需要.value 直接 {{xxx}}备注 接收的数据可以是基本类型 也可以是对象类型基本类型的数据 响应式依然是靠Object.de原创 2021-09-10 20:18:33 · 585 阅读 · 0 评论 -
vue3组合api watch与computed的用法
vue3组合api watch的用法两个小“坑”:监视reactive定义的响应式数据时:oldValue无法正确获取、强制开启了深度监视(deep配置失效)。监视reactive定义的响应式数据中某个属性时:deep配置有效。监听ref定义的普通值响应式数据// 1、侦听器-基本类型const count = ref(10)// 侦听普通值基本使用watch(count, (newValue, oldValue) => { console.log(newVal原创 2021-09-10 19:36:05 · 1816 阅读 · 0 评论 -
如何定义全局自定义组件 如何把自定义组件作为插件使用Vue.use()使用 包含(vue3.0)
如何定义全局自定义组件 如何把自定义组件作为插件使用定义组件<template> <el-card> <div class="page-tools"> <!-- 左侧 --> <div class="left"> <div class="tips"> <i class="el-icon-info" /> <!-- <s原创 2021-08-18 17:14:27 · 1087 阅读 · 0 评论