vue3

Vue.js框架:vue2和vue3开发环境共存

一、安装vue3 此处建立在已经按正常流程全局安装好vue2版本的情况下,老项目需要使用vue2运维,新项目使用vue3开发,因此需要两种环境共存。 找一个合适的位置,新建一个文件夹,在该文件夹目录下,打开cmd终端,运行命令: npm install @vue/cli --registry=htt ......
vue 框架 环境 vue2 vue3

【Vue3响应式入门#01】Reactivity

接下来,我们将会用 Vue3 建造响应式的方法,从头开始制造一个响应式引擎,让我们一步一步的来解决这个问题! ......
Reactivity Vue3 Vue 01

vue3文件导入导出

导入: // 导入 const importExcel = async (file: any) => { let formData = new FormData(); //声明一个FormDate对象 formData.append("file", file.raw); //把文件信息放入对象中 / ......
文件 vue3 vue

vue2.x和vue3.x关于获取表格某一行的写法真的不同绝了

vue2.x <el-table-column label="测试" align="center" prop="ce"> <template slot-scope="scope"> <span>{{scope.row.ce}}</span> </template> vue3.x <el-table- ......
写法 vue 表格 一行 vue2

vue3.x增加数据功能

具体代码 <template> <el-form :model="form" :rules="rules" ref="ruleFormSSS" label-width="120px"> <el-form-item label="用户姓名" prop="name"> <el-input v-model ......
功能 数据 vue3 vue

需求:vue3+swiper+ts实现轮播图(中间主体轮播,左右各显示部分)

一、下载安装swiper 安装:pnpm install swiper 使用你熟悉的方式来安装(yarn npm cnpm) 二、在项目中引入swiper 1.main.js文件 点击查看代码 import 'swiper/swiper-bundle.css'; import "swiper/css ......
主体 需求 部分 swiper vue3

Vite+Vue3 加载速度优化

可以考虑从以下几个方面优化。整体思路:1.减小打包体积。2.异步加载。 静态资源拆分打包 在常规打包方法下,所有的第三方依赖将会都打包在一个 vendor.js 文件里,首次打开页面时,服务器会先加载这个大文件,导致白屏时间过长。 而我们打包时,事先将依赖拆分成很多小文件各自进行打包,便可以实现异步 ......
速度 Vite Vue3 Vue

Vue3 父子、兄弟组件通信

父组件向子组件通信 父组件:Father <script setup> import OneSon from "./oneSon.vue"; import { reactive } from "vue"; const state = reactive({ fatherData: "I am from ......
父子 组件 兄弟 Vue3 Vue

Vue2和Vue3中的v-model的区别

Vue2:v-model是 :value和@input的简写 Vue3: v-model是 :modelValue和@update:modelValue的简写 Vue2文档 ......
Vue v-model model Vue2 Vue3

Vue3 element-plus el-cascader后缀图标更改(svg)

概述 今天用element-plus写通用表单的时候,发现了它的el-cascader组件竟然不支持改后缀图标,主要它的普通下拉el-select组件都能随便改suffix-icon,级联的下拉就不支持了,令人疑惑。 然后,找了好多办法,包括直接取原生的Component改它的arrowDown属性 ......

SvgIcon全局组件---开发环境:vue3+vuecli5

开发背景 node v18.17.0(node -v) npm v8.4.1(npm -v) @vue/cli 5.0.8(vue -V) 0.SvgIcon全局组件 全局组件是指在应用程序的任何位置使用的组件,使用全局组件前需要在Vus.js实例中注册,并将其挂载到实例中。全局组件是可复用的Vus ......
全局 组件 SvgIcon vuecli5 环境

vue3中监听滚动条事件

import { onMounted, onUnmounted, reactive } from 'vue' const data=reactive({ oldScrollTop:0, }); const scrolling=()=>{ // 滚动条距文档顶部的距离 let scrollTop =w ......
事件 vue3 vue

antd for vue3 table 使用rowClassName设置样式固定列不生效

依赖库版本 : Vue 3 + antd for vue v3. X 样式问题 :固定列背景色不生效,鼠标移入对应行背景色变为初始的白色 columns: [ { title: '装置', width: 100, dataIndex: 'areaName', fixed: 'left' }, ... ......
rowClassName 样式 table antd vue3

vue3使用高德地图进行多边形的绘制,编辑以及创建

npm i @amap/amap-jsapi-loader --save <!-- 高德地图 --> <template> <div style="display: flex;"> <div id="container" style="width: 800px; height: 500px; bor ......
多边形 地图 vue3 vue

在vue3+ts中封装自定义指令

src/main.js // 自定义指令 import * as directives from "@/directives"; Object.keys(directives).forEach(key => { app.directive(key, (directives as { [key: st ......
指令 vue3 vue ts

vue3中引入elementplus以及图标(vue3+vuecli)

开发背景 node v18.17.0(node -v)npm v8.4.1(npm -v)@vue/cli 5.0.8(vue -V) 0.用命令行安装elementPlus npm install element-plus --save 1.elementplus按需手动导入 ElementPlu ......
vue3 elementplus 图标 vue vuecli

开源项目 | 一款基于NodeJs+Vue3的强大的在线设计图片工具

采用 Vue3+Vite2+Vuex+ElementPlus 技术实现的在线海报图片设计工具,可用于生成电商分享图、文章长图、视频/公众号封面等。 ......
设计图片 工具 项目 NodeJs 图片

vue3中setup

和vue2不同的是vue3中的script中带有setup标签 里面的setup相当于vue2中的data和methds空间可以放置函数,也可以执行函数 在写时需要有return返回值 <script setup> </script> setup执行发生在页面之前所以不能使用this函数,一般通过r ......
setup vue3 vue

Vue3中的生命周期

Vue3生命周期-CSDN博客 一、Vue3中的生命周期1、setup() : 开始创建组件之前,在 beforeCreate 和 created 之前执行,创建的是 data 和 method 2、onBeforeMount() : 组件挂载到节点上之前执行的函数; 3、onMounted() : ......
周期 生命 Vue3 Vue

Vue3 + Quasar系列-代码配置以及报错汇总记录(不断更新中)

1. Vue3 + Quasar系列-代码配置打包去掉hash后缀 去掉hash https://quasar.dev/quasar-cli-vite/developing-pwa/configuring-pwa 2. Vue3 + Quasar改变主题背景 quasar的样式和其他的框架修改不太一 ......
不断 代码 Quasar Vue3 Vue

Vue3| Pinia 持久化插件

对 vuex 或 Pinia 里面的内容做本地持久化 1. 安装插件: npm i pinia-plugin-persistedstate 2. 将插件添加到 pinia 实例上 ① main.js 里导入持久化插件:import piniaPluginPersistedstate from 'pi ......
插件 Pinia Vue3 Vue

Vue3| Pinia 的 action 异步写法

import { defineStore } from 'pinia' import { ref } from 'vue' import axios from 'axios' export const useChannelStore = defineStore('channel', () => { ......
写法 action Pinia Vue3 Vue

Vue3| Pinia 的语法

Pinia 是 Vue 的最新 状态管理工具,是 Vuex 的替代品 Pinia 的优势: 1. 提供更简单的 API(去掉了 mutation) 2. 提供符合 组合式风格的 API(和 Vue3 新语法统一) 3. 去掉了 modules 的概念,每一个 store 都是一个独立的模块 4. 配 ......
语法 Pinia Vue3 Vue

Vue3| 组合式 API——provide 和 inject

作用和场景:顶层组件向任意的底层组件 传递数据和方法,实现 跨层组件通信 跨层传递普通数据 步骤: 1. 顶层组件通过 provide 函数提供数据 provide ( ' key ' , 顶层组件中的数据 ) 2. 底层组件通过 inject 函数获取数据 const message = inje ......
provide inject Vue3 Vue API

Vue3| 模板引用、defineExpose宏函数

模板引用的概念:通过 ref 标识 获取真实的 dom对象或者组件实例对象 使用: 1. 调用 ref 函数生成一个 ref 对象 <script setup> import { ref } from 'vue' const h1Ref = ref (null) </script> 2. 通过 re ......
defineExpose 函数 模板 Vue3 Vue

Vue3| 组合式 API 下的 子传父

步骤: 1. 子组件内部通过 emit 方法触发事件 ① 通过 defineEmits 编译器宏生成 emit 方法 <script setup> const emit = defineEmits ([ 'get-message' ]) // get-message:可以触发的事件 </script ......
Vue3 Vue API

Vue3| 组合式 API 下的父传子

步骤: 一、父给子传 写死的值 1. 父组件中给子组件 以添加属性的方式传值 <script setup> import sonComVue from './son-com.vue' // 局部注册 </script> <template> <sonComVue message = "黑马程序员"> ......
Vue3 Vue API

Vue3| 组合式API——computed 计算属性函数

计算属性基本思想和 Vue2 的完全一致,组合式 API 下的计算属性只是修改了写法 核心步骤: 1. 导入 computed 函数 <script setup> import { computed } from 'vue' </script> 2. 执行函数 在回调参数中 return 基于响应式 ......
函数 computed 属性 Vue3 Vue

Vue3| 组合式API——reactive 和 ref 函数

Vue中默认的数据并不是响应式的,如果我们希望数据是响应式的,则需要通过 reactive 或者 ref 进行处理。 reactive (): 作用:接收 对象类型的数据作为参数传入 并返回一个 响应式对象 reactive 不能处理简单类型的数据 reactive 使用步骤: 1. 在 <scri ......
函数 reactive Vue3 Vue API

Vue3| 组合式 API——setup 选项

组合式 API:一系列函数,有时需要调用这些函数编写组件逻辑。 setup 是组合式 API 的入口,先写 setup,才能往里边写组合式 API 的函数 setup 的执行时机会比 beforeCreate 生命周期钩子还要早,因此 setup 函数中获取不到 this setup 选项的写法:( ......
setup Vue3 Vue API