- 博客(25)
- 收藏
- 关注
原创 el-tree 当后台返回选中节点数组时,只要包含有父节点,它下面的子节点全部默认选中,问题解决
el-tree 当后台返回选中节点数组时,只要包含有父节点,它下面的子节点全部默认选中
2022-07-04 16:57:14
950
1
原创 原生JS实现发布订阅功能
var bus = { list: [], //订阅 subscribe(callback) { this.list.push(callback) }, //发布 publish(text) { console.log('打印所有订阅者的方法:' + this.list) console.log('打印发布者的发布的数据:' + text) //遍历所有的list,将回调函数执行 this.list.forEach((item) =&g.
2022-02-16 14:09:13
624
原创 Redux中CreateStore(reducer) 底层简单实现
function createStore(reducer) { //设置一个空数组,存放订阅者返回的回调方法 var list = [] //先设置reducer初始值 var state = reducer(undefined, {}) //订阅者 function subscribe(callback) { list.push(callback) } //发布者 function dispatch(action) { state = redu.
2022-02-16 14:00:41
528
原创 封装mongoose数据库
1.创建一个文件夹 存放封装过的模块//连接数据库//1.引入mongooseconst mongoose = require('mongoose')//2.建立连接 (设置账号密码的话记得加上!!)mongoose.connect('mongodb://localhost/你的数据库名') //3.判断连接状态var db = mongoose.connectiondb.on('error', console.error.bind(console, 'connection e
2022-01-04 22:12:55
1024
原创 Node封装上传图片模块
const multer = require('multer')//引入格式化时间插件const sd = require('silly-datetime')const mkdirp = require('mkdirp')const path = require('path')let tools = { multer() { const storage = multer.diskStorage({ //配置上传目录 destination: function.
2022-01-03 15:22:46
359
原创 element级联选择器 遍历最后一个children设为undefined
// 递归判断列表,把最后的children设为undefined getTreeData(data) { for (var i = 0; i < data.length; i++) { if (data[i].children.length < 1) { // children若为空数组,则将 children 设为undefined d...
2021-12-21 10:09:55
477
原创 将一维数组根据parentID转换为树形结构
let list = [ { childSubjectList: [], subjectId: 1, parentId: 0 }, { childSubjectList: [], subjectId: 2, parentId: 0 }, { childSubjectList: [], subjectId: 3, parentId: 1 }, ..
2021-12-21 10:05:46
821
原创 封装防抖与节流
防抖:用户触发事件过于频繁,只要最后一次执行的操作举个例子:防抖好比电梯门,当不停的有人进入的时候,门不会关闭,当电梯监测到5秒内没有人进入,才会关门使用闭包+setTimeout封装防抖函数: function debounce(fn, detil) { let t = null return function () { if (t !== null) { clearTimeout(t) } t = setTimeout((
2021-11-10 13:52:13
444
原创 Vue移动端url路径发生改变但页面没有跳转
出现上述问题是Vue的一个小bug此时需要刷新路由:this.$router.go(0)如果发生页面卡顿的现象,可以添加一个定时器settimeout(()=>{this.$router.go(0)},200)
2021-11-09 16:01:55
1114
1
原创 快速修改某个数组中一个或多个对象的属性名
先进行深拷贝,再做替换:JSON.parse(JSON.stringify(data).replace(/name1/g, 'new_name1').replace(/name2/g, 'new_name2').replace(/name3/g, 'new_name3')...)replace可以重复链式编程,name1表示旧属性名,new_name表示新属性名...
2021-11-04 16:59:27
234
原创 Vue重复点击同一个路由报错问题解决
在新版本的vue-router中,重复点击同一个路由会出现以下报错 :这个问题时vue-router 3.2.0版本的一个小Bug有三种解决办法:第一种:vue-router降级处理(不推荐)npm i vue-router@3.0.7第二种:直接在push方法最后添加异常捕获 (捕捉错误提示但不显示)@click="$router.push('/home/searchPopup').catch(err=>{})"第三种:直接修改原型方法push(推荐.
2021-11-02 16:56:39
1331
原创 封装axios遇到的小问题
当使用封装好的axios,Api接口时 调用封装好的Api接口方法,然后使用.then读取数据报错这种问题是因为在封装Api接口文件时 没有将获取的数据return出去应注意箭头函数的大括号问题,如果加了大括号 需要return 如果没有大括号 则不用return...
2021-11-02 15:17:39
344
原创 Vue清除默认样式插件
1. npm i reset-css (下载清除默认样式插件)2. 在main.js中全局引入样式import 'reset-css'
2021-11-01 20:18:06
1004
1
原创 在Vue中如何使用moment时间插件
1.使用npm包管理工具下载momentnpm install moment--save 2.在main.js中挂载moment插件import moment from 'moment'Vue.prototype.$moment = moment
2021-10-27 21:05:58
569
原创 在git上在线预览Vue项目
1.在项目中运行 npm run build 进行打包生成dist文件夹(注意:打包之后运行dist下index.html,如果什么都没有显示空白,是js,css引入路径错误,在路径前+“ . ”,即可解决问题)2.运行 git init 让git接管该项目3.运行git命令,将vue项目保存在git本地仓库中git status //检测是否有更新git add . git commit -m' 更新注释 '(注意:将项目上传之后,会发现git自动跳过了dist文...
2021-10-16 11:16:35
369
原创 git在远程仓库传项目出现的问题
第一个问题:当我们连接远程仓库时git remote add origin https://github.com/DoYol/shopping_cart.git跳出了这个错误:error: remote origin already exists.解决方法是:输入 git remote rm origin 清空仓库地址第二个问题:当仓库连接完成传项目时git push -u origin master跳出弹框让我们登录,随后报错fatal: Custom...
2021-10-15 16:20:19
7286
1
原创 Vue反向代理服务器
在项目中创建 vue.config.js 文件module.exports = { devServer: { proxy: { '/api': { target: 'http://localhost:3000', pathRewrite: { '^/api': '' } } } }}如果遇到需要进行跨域的服务器将 /api 加入到baseurl中...
2021-10-12 15:47:10
180
原创 渲染图片403错误
在index.html头部标签加上如下代码即可<meta name="referrer" content="no-referrer"/>
2021-10-12 08:47:29
129
原创 Eslint 最简单的配置教程
如何使用:第一步:创建一个vue项目 vue create 项目名称第二步:自定义选择配置①eslint +CSS Pre-processors ④ +ESLint + Standard config ⑤:Lint on save第三步:安装vscode插件 ①:Eslint 作者Dirk ②:prettier -Code Formatter 作者:prettier第四步:添加.prettierrc文件(在C:\Users\123)中配置后缀名为 ”.prett...
2021-10-03 11:04:26
731
原创 Cannot read property ‘**’ of undefined
此错误的意思是:focus前面的成员为undefined;在vue中定义ref渲染页面遇到此问题,应注意组件中的 生命周期
2021-09-29 21:58:15
381
原创 webpack热处理npm run dev 出问题
如果出现上图情况,则是 webpack-cli 版本问题 运行 npm uninstall webpack-cli (删除局部的webpack-cli)直接重新运行 npm run dev 会提示yes/no输入 yes重新运行即可正常
2021-09-24 19:08:26
85
原创 Node.Js中nodemon工具无法启动解决方案
1.管理员身份打开powerShell(命令行工具)2.输入set-ExecutionPolicy RemoteSigned 选择a或者y重启便可生效
2021-09-22 16:11:42
154
原创 JS 封装Cookie 包
将Cookie的添加、获取、删除封装起来,如果开发中有需要直接调用即可。方便快捷1.Cookie的添加2.Cookie的获取3.Cookie的删除//setCookie创建Cookie//键名值过期时间functionsetCookie(key,value,time){vardate=newDate();date.setDate(date.getDate()+time);document.coo...
2021-08-27 18:14:58
167
原创 如何判断是闰年
首先获取年份;然后进行判断(闰年可以被4整除 并且不可以被100整除,或者可以被400整除)综上所述得到判断条件年份%4==0 && 年份%100 != 0 || 年份 %400==0满足条件则是闰年,反之则不是...
2021-08-27 17:26:37
123
原创 输入一个三位数,计算三个数字的和
首先接受这个三位数;然后使它除以10取余数 得到个位数;再使它除以10,再对10取余数得到十位数;最后除以100,得到百位数;
2021-08-27 17:17:33
1915
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人