自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 nextjs14.x监听页面更改

可以通过组合其他客户端组件挂钩(如usePathname和useSearchParams)来监听页面更改。在 app/components/navigation-events.js。在 app/layout.js。

2024-10-23 15:47:43 240

原创 动态绑定类名

当class样式条件判断多个或者较复杂时,可以使用计算属性来处理类名的绑定。

2024-10-14 16:28:33 114

原创 浏览器缓存

分强缓存和协商缓存。

2024-10-14 13:25:24 112

原创 react18.x+antd 自定义menu菜单图标与菜单导航地址

【代码】react18.x+antd 自定义menu菜单图标与菜单导航地址。

2024-08-27 17:57:17 282

原创 vue3+el-table,默认展开第一项

vue3+el-table,默认展开第一项。

2024-07-09 19:40:39 309

原创 vue3+ el-tree 展开和折叠,默认展开第一项

vue3+el-tree展开与折叠

2024-07-08 17:02:08 773 1

原创 使用 useRef 而不是 useState 来存储上一次的内容

useRef 返回一个普通的 JavaScript 对象,其 .current 属性是可变的,并且可以存储任何值。最重要的是,改变 useRef 的 .current 属性不会触发组件的重新渲染。而 useState 用于状态管理,当状态更新时,它会触发组件的重新渲染。useRef 在组件的整个生命周期内保持不变。使用 useState 也可以实现相似的功能,但它更适合那些需要触发渲染或响应状态变化的场景。这在某些情况下可以简化代码的复杂性,特别是当值的更新不需要触发重新渲染时。

2024-07-04 08:51:45 205

原创 react18.x+播放文本内容

需要调接口将文字传递给后端将文字转换成音频文件,然后播放,同时每次播放不同文本时,当前播放的文本需要暂停,切换到播放新点击的文本。

2024-06-27 16:13:03 466

原创 为什么接口返回的是二进制流的文件时,前端请求时responseType要设置成‘blob‘

设置responseType为blob可以确保数据的完整性,使得前端可以对这些二进制数据进行进一步的处理,如将其保存为文件或直接在浏览器中播放。设置responseType为blob是一种标准化的处理方式,有助于确保代码在不同浏览器中的兼容性。如果前端请求不设置responseType,默认情况下,浏览器会尝试解析返回的数据,可能会将其错误地处理为字符串,导致数据损坏或不可用。所以,在处理二进制流文件时,前端请求设置responseType为blob主要是为了确保能够正确地接收和处理后端返回的二进制数据。

2024-06-27 10:59:59 743

原创 react项目实现语音识别功能

需要调用后端接口将录音文件传给后端,由后端将录音内容转换成文字返回给前端,当然也有一些插件可以实现语音转文字功能,可以自行查找使用插件实现方法。

2024-06-25 16:46:43 776

原创 vue3.x项目,配置项目打包到二级目录

一、打开 vite.config.js 文件,添加或修改base字段, 将其值设置为二级目录的路径。vue3.x项目,配置项目打包到二级目录。

2024-03-14 10:11:54 1643

原创 react项目打包二级目录

在React 18.x中,如果你使用的是Create React App (CRA)来创建和管理你的项目,你可以通过修改package.json文件中的homepage字段来配置应用打包到一个二级目录。process.env.PUBLIC_URL在开发环境中通常是空字符串,在生产环境中则是你在package.json中设置的homepage字段的值。在create-react-app创建的项目中,可以通过process.env.PUBLIC_URL来访问homepage字段中定义的URL。

2024-03-08 11:57:49 1358

原创 qiankun:react18主应用 + 微应用 react18 + vue3

qiankun+react18主应用 +vue3/react微应用

2023-07-19 20:43:34 2507

原创 vue3中的事件等

【代码】vue3中的事件等。

2023-07-13 09:19:54 387

原创 react中使用 websocket

参考官网地址: https://socket.io/zh-CN/docs/v4/client-installation/#from-npm。react中使用 websocket,使用socket.io库。

2023-07-05 16:56:09 2657

原创 react中使用canvas,将canvas区域保存成图片

react中使用canvas,将canvas区域保存成图片。

2023-07-05 16:48:47 1883

原创 react中使用Ant Design的Upload 组件,使用后端提供的接口上传图片,不使用默认的action 请求

2、上传多张图片(可拖拽和点击)

2023-06-29 16:44:35 3112 1

原创 vue3中路由跳转对应菜单高亮,在<script setup>中监听路由变化

vue3路由变化对应菜单高亮

2023-04-13 16:46:05 1084

原创 mpvue的一些知识

一、mpvue中生命周期:1、created:所有页面的created都是在页面渲染的一开始都全部加载出来(在vue中,created是按需加载,当我们进入某个页面,才会加载当前的created)2、onLoad: 用户进入A页面,会触发onLoad,但是当进入另一个页面后再返回到A页面,不会触发onLoad3:mounted:是用户每次进入页面, 都会执行,无论是否点击返回二、动态绑定 class//对象形式 <div v-for="(item, index) in List" :ke

2020-10-30 10:34:53 1756

原创 vue解决组件循环使用报错

当我们正常的注册组件,正常的引用组件,还是报错 组件没有正常的注册,如下图:解决方法:将原来的 import xxx from ‘xx/xx/xxx’ components:{ xxx }更改成: components: { xxx: () => import(“xx/xx/xxx”), },...

2020-10-20 18:11:43 812

原创 mpvue项目引入vant组件

1、安装npm i @vant/weapp -S --production2、在 build —> webpack.base.conf.js 加入以下代码: new CopyWebpackPlugin([{ from: path.resolve('node_modules/@vant/weapp/dist'), to: path.resolve('dist/wx/vant-weapp/dist'), ignore:

2020-09-23 17:30:07 821

原创 electron项目的一些问题

1、运行项目报错:process is not defined解决方法:在 .electron-vue —> webpack.renderer.config.js 里加入如下代码: templateParameters(compilation, assets, options) { return { compilation: compilation, webpack: compilation.getStats().toJson(),

2020-09-18 17:51:16 330

原创 vue项目关闭eslint

在项目的build —> webpack.base.conf.js 下,注释掉 eslint校验

2020-08-31 17:58:19 174

原创 vs code 代码格式化

设置vs code代码在一行显示设置 -》 首选项 -》 setting -》 setting.json里放入下面代码{“vetur.format.defaultFormatter.js”: “vscode-typescript”,“vetur.format.defaultFormatterOptions”: {“js-beautify-html”: {“wrap_attributes”: “force-expand-multiline”,“wap_line_length”: 22

2020-08-13 16:22:35 393

原创 点击切换状态按钮,当页面刷新之后保持在之前状态的内容区(使用 vuex )

1、在 store文件夹下的 modules 下新建 status.js2、在 store 下的 index.js中引入 status.js

2020-08-13 16:11:39 682

原创 vue 开始时间<结束时间,结束时间>开始时间

if (Date.parse(this.beginTime) - Date.parse(this.endTime) >= 0) { this.$message.error('结束时间必须大于开始时间') return;} else if (Date.parse(new Date()) - Date.parse(this.beginTime) > 0) { this.$message.error('开始时间不得小于当前时间') return;}...

2020-08-10 15:44:00 2125

原创 点击动态切换背景颜色

<template> <div> <div v-for="(item,index) in 10" :key="index" :class="{'active':index===nowIndex}" @click="handleClick(index)"> <p>测试一下</p> </div> </div></template><script>export de

2020-07-25 15:32:38 535

原创 vue + 下载文件(以下载excel表格为例)

通过 a 标签的 href 属性来实现下载<template> <div> <a :href="downloadUrl+'?type=excel'"> // 此处下载是get请求,type=excel为后台要求要传的请求参数,要拼接在 地址后面 <el-button size="small" type="primary" style="margin-left:10px">excel模板下载</el-button>

2020-07-23 17:05:34 2775

原创 vue +element + 导入表格( 导入的表格为 application/json 格式 )

1、下载包npm install -S file-saver xlsxnpm install -D script-loadernpm install xlsx2、在main.js中引入import XLSX from 'xlsx'Vue.use(XLSX)3、使用(第一种:未调接口;第二种调接口)<template> <div> <el-upload action :show-file-list="false" :on-change="handl

2020-07-23 16:55:10 1229

原创 vue多个页面用到同一个接口的数据( 比如名称列表 ),使用 vuex

第一种: 调接口不传参数1、在 store文件夹下的 modules文件夹下新建 getName.js// getName.jsimport { getNameList } from "@/apis/apis"; // 导入接口export default { state: { nameList: [] // 名称列表 }, mutations: { changeNameList(state, payload) { state.nameList= pay

2020-07-22 22:02:00 5283 1

原创 vue + element + Upload 上传图片

<template> <div> <el-form :inline="true" :model="form" :rules="Rules" ref="form" label-width="100px"> <el-form-item label="头像" prop="avatar"> <el-upload class="avatar-uploader" :action="uploadUrl" :headers="{.

2020-07-20 11:42:10 672

原创 vue + element + select 获取下拉框的 label 和 value 值( 例如 绑定的是 id , 但后台要求即传 id ,又要传 id 对应的 name )

<template> <div> <el-form :inline="true" :model="form" ref="form" :rules="formRule"> <el-form-item label="标题" prop="titleId"> <el-select v-model="form.titleId" filterable placeholder="请选择标题" @change="changeTit

2020-07-20 10:14:50 6160

原创 监听vuex 中数据状态的变化

<script>export default { data() { return { index: '', }; }, created(){ this.index = this.$store.state.moduleName.index; }, computed: { getIndex() { return this.$store.state.moduleName.index } }, watch: {

2020-07-17 09:45:26 1954

原创 vue +element + 导入表格( 导入的表格传给后台 form-data 格式 )

1、安装插件npm install -S file-saver xlsxnpm install -D script-loadernpm install xlsx2、使用<template> <div> <el-upload class="upload student-enter" action="#" :show-file-list="false" :on-change="handleExcel" accept="application/vnd.op

2020-07-16 21:34:22 2464

原创 vue项目打包之后出现源代码的问题

1、在config -> index.js//config -> index.js productionSourceMap:false, //将 productionSourceMap:ture 改为 productionSourceMap:false2、vue cli3 及以上版本在 根目录下的 vue.config.js//vue.config.js module.exports = { productionSourceMap: true}...

2020-07-16 21:12:27 1240

原创 vue项目中,比如登录的时候要进行校验,如果2个或多个校验是一样的时候,可以封装一个 promise ,避免代码重复

因本人暂时还为把promise琢磨清楚,但确实在项目中也迷迷糊糊的使用了,所以目前写出来仅供自己参考。我在如下使用场景使用 promise我们在做登录的时候,通常会做校验,在有要发送短信验证码之前,要校验手机号、用户名等,在登录的时候除了要校验手机号、用户名等之外,还要校验 短信验证码,此时就会出现一种情况,即发送验证码的时候要校验,登录也要校验,只是多了一个 验证码的校验,这时候就会造成重复校验的情况,如果要校验的 类目比较少还好,还无所谓,如果要校验5-6条等,那无疑会增加代码,所以我们可以用 pr

2020-07-10 17:47:03 634 2

原创 vue 多个页面调同一个接口,传不同的参数,使用 Vuex 来实现传不同参数调统一接口

1、在 api 文件夹下的 api.js 下import https from "@/utils/axios"; // 引入在 utils下的 axios.js 中封装的请求export const pageOfInfoAtES = function(params) { let url = "/xxx/pageOfInfoAtES"; return https(url, params, "post");};2、在 store文件夹下的 modules文件夹下新建 getInfo.j

2020-07-10 17:17:11 5133 2

原创 vue项目打包到二级目录(以测试环境打包到二级目录为例)

1、在 build —> webpack.base.conf.jslet publicPath = ''if (process.env.NODE_ENV === "production") { publicPath = config.build.assetsPublicPath} else if (process.env.NODE_ENV === "testing") { publicPath = '/xxx' + config.dev.assetsPublicPath}modul

2020-07-07 10:33:58 3331

原创 vue 数字图片验证码

1、安装npm install identify2、封装公共组件<template> <div class="code-container"> <canvas id="code-canvas" :width="contentWidth" :height="contentHeight"></canvas> </div></template><script>export default { pr

2020-07-05 18:42:52 1254

原创 vue中使用富文本编辑器 wangEditor

一、 wangEditor基于javascript和css开发的 Web富文本编辑器, 轻量、简洁、易用、开源免费http://www.wangeditor.com/index.html(1)、安装npm install wangeditor2、封装公用组件 editor.vue<template lang="html"> <div class="editor"> <div ref="toolbar" class="toolbar">

2020-07-05 14:38:14 1057

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除