工作日常
懂懂kkw
持续精进
展开
-
nvm (node 版本管理器)
nvm node 版本管理原创 2022-11-15 19:59:37 · 571 阅读 · 1 评论 -
element-ui toggleRowSelection 分页取消选中实现
需求如下需要用到 element-ui table api toggleRowSelection, 它里面有包含两个属性,row, selected, row是行数据,selected 为布尔值 true 则选中,但是存在一个问题,row如果不是来源自tableData(table渲染数据)里面的值,这个属性取消选中不会生效,原因是什么?看源码例子解决方法如果要实现上面需求,那就需要拿table内存中的值去匹配那么我们可以直接通过内存中的值去匹配来取消table选中 this.原创 2022-02-24 14:46:02 · 1535 阅读 · 3 评论 -
vue点击其他区域关闭模块
点击 box 以外区域关闭 类名pop的div // template <div ref="box"> <div class="pop" v-if="popVisible"></div></div> // js mounted() { document.addEventListener('click', (e) => { if (!this.$refs.box.contains(e.target)) this.p原创 2022-02-24 14:07:21 · 1134 阅读 · 0 评论 -
vue admin后台管理系统搭建(基于element-ui)
1. 步骤先去除冗余代码增加提交规范新增路由权限逻辑, 左侧菜单也要加入鉴权逻辑(跳转两种情况,无权访问和页面不存在, 权限标识加到meta里面,includes判断)环境变量配置 title信息升级vue-router, 配置全局组件, icon等打包环境移除console注入时间和版本信息2.细节优化package.json 脚本优化 "serve": "vue-cli-service serve", // 加yarn install "serve": "yarn inst原创 2020-09-04 18:25:45 · 1531 阅读 · 0 评论 -
husky配置 => git 日志提交规范限制, eslint检查
1. husky 是什么husky 是一个 Git Hook 工具。本文主要实现提交前 eslint 校验和 commit 信息的规范校验简单说就是,当我们运行 git commmit -m ‘xxx’ 时,用来检查 xxx 是否满足固定格式的工具使用这个工具要实现什么目的, 通过提交记录一目了然,我们本次提交了做了哪些操作,便于后续维护和统一规范2. 安装需要安装以下依赖// 使用 yarnyarn add husky lint-staged @commitlint/cli @comm原创 2020-09-03 18:42:45 · 2882 阅读 · 0 评论 -
本地运行vue打包项目
1. 使用 http-server-spa全局安装 http-server-spayarn global add http-server-spa// 或者npm i -g http-server-spa运行// http-server-spa <directory> <fallback> <port>// 运行 dist 为目录,index.html 启动文件,端口 8080http-server-spa ./dist/ index.html原创 2020-09-03 15:45:04 · 1175 阅读 · 0 评论 -
rem.js 移动端rem适配js代码
!(function(win, doc) { function setFontSize() { // 获取window 宽度 var winWidth = window.innerWidth; doc.documentElement.style.fontSize = (winWidth / 750) * 100 + 'px'; } var evt = 'onorientationchange' in win ? 'orientatio.原创 2020-05-14 10:07:42 · 661 阅读 · 0 评论 -
Element Pagination组件 size-change事件 请求两次接口的BUG
问题 :当分页处于最后一页切换分页条数, 会请求两次数据, 如果第一次请求慢于第二次,则会出现表格空白情况原因 : 当分页处于最后一页切换成大条数分页 会调用一次size-change事件 , 此时当前页80会变化, 所以会继续调用current-change事件会调用两次解决方案:当出现当前页 * 条数> 总条数 的情况时不调用接口 , 就...原创 2019-12-25 16:55:58 · 4296 阅读 · 4 评论 -
vue中封装webSocket
在vue项目中,每个组件里使用webSocket比较简单,但是webSocket的使用是在整个项目中的时候呢,我们就需要封装成一个公共的文件;1.新建一个 socket.js 文件var websock = null;var global_callback = null;var serverPort = '5000'; //webSocket连接端口function...转载 2019-02-28 16:04:59 · 8374 阅读 · 0 评论 -
前端 WebSocket 配置
JS<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">转载 2019-02-28 16:11:53 · 3460 阅读 · 0 评论 -
js 校验六位不重复,不连续数字
let reg = /^(\d)\1{5}$/; // 不重复6位 类似111111,222222let str = '0123456789_9876543210'; // str.indexOf(value) > -1 不连续判断 类似123456if (value.length!==6 || reg.test(value) || str.indexOf(value) > -...原创 2019-02-25 16:05:30 · 5547 阅读 · 0 评论 -
layer使用 小demo
bootstrapTable 后台请求数据, 鼠标放在title上展示提示信息$('#table').on('mouseenter','.th-inner',function (e) { var time = 2000; var tips = function (text) { layer.tips(text, e.target, { ...原创 2019-04-01 14:01:27 · 465 阅读 · 0 评论 -
断网检测
/** * 检测断网 */let EventUtil = { addHandler: (element, type, handler) => { if (element.addEventListener) { element.addEventListener(type, handler, false); } else i...原创 2019-02-28 13:40:02 · 2266 阅读 · 0 评论 -
vue+axios+promise实际开发用法
axios它是基于promise的http库,可运行在浏览器端和node.js中,然后作者尤雨溪也是果断放弃了对其官方库vue-resource的维护,直接推荐axios库,小编我也是从vue-resource转换过来的,差别说不来,我们讲一下axios在实际开发中的用法axios特点1.从浏览器中创建 XMLHttpRequests2.从 node.js 创建 http 请求3.支持...转载 2019-02-15 20:48:16 · 965 阅读 · 0 评论 -
vscode 识别vue文件
"files.associations": { "*.vue": "vue", "*.wpy": "vue" },setting 的 json 里面配置, 意思是以这两个文件后缀结尾的都定义成vue 文件原创 2019-01-04 14:35:06 · 15407 阅读 · 3 评论 -
推荐一款远程工作的软件teamViewer
下载地址简单好用原创 2018-12-29 15:27:28 · 780 阅读 · 0 评论 -
&和&& , “|”和“||”的区别
&和&&的区别: 单&时,左边无论真假,右边都进行运算; 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。 那么一个判断的 if 语句可以简化成一行代码,如下. if(num>0){num++}// 可以简化成一行代码num>0 && num++ “...原创 2018-12-29 14:44:25 · 212 阅读 · 0 评论 -
全选,取消全选(字符串拼接)
// 列表拼接function admin_list() { $.ajax({ url: 'api/list', type: 'get', headers: { Accept: "application/json; charset=utf-8" }, async: false,...原创 2018-12-28 16:20:28 · 254 阅读 · 0 评论 -
vue 显示微信title
1. 安装插件 (vue-wechat-title)yarn add vue-wechat-title --dev2. main.js 引入使用import VueWechatTitle from 'vue-wechat-title'; Vue.use(VueWechatTitle);3. router.js 加入title { ...原创 2019-03-01 14:08:48 · 637 阅读 · 0 评论 -
jsvascript === 和==的区别
== 用于比较 判断 两者相等 == 在比较的时候会 1.先自动换数据类型 2.再比较=== 用于严格比较 判断 两者严格相等 === 严格比较,不会进行自动转换,要求进行比较的操作数必须类型一致,不一致时返回flase。举例说明:"1" == true类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;此时,类型...转载 2019-02-20 14:03:11 · 277 阅读 · 0 评论 -
纯前端利用 js-xlsx 实现 Excel 文件导入导出功能示例
1.导入功能实现下载js-xlsx到dist复制出xlsx.full.min.js引入到页面中然后通过FileReader对象读取文件利用js-xlsx转成json数据代码实现(==>示例<==)<!DOCTYPE html><html> <head> <meta charset="UTF-8"> ...转载 2018-05-16 19:20:01 · 1176 阅读 · 0 评论 -
css 超出横向滚动 (备忘)
overflow-x:auto;除了上面这个属性, 还得加个white-space:nowrap;原创 2019-06-03 15:59:42 · 5351 阅读 · 1 评论 -
js 中编码和解码
1. 什么情况下需要编码 ?我们要查询一个年龄为 20,姓名包含tom的人,那么我们会这样去组织请求var url = "http//xxx/age=20&name=tom"然后服务端就能收到下面的接口请求参数{ "age": "20", "name": "tom"}如果我要搜索的姓名是tom&lucy,那么 url 就变成了var...原创 2019-05-30 15:49:02 · 905 阅读 · 0 评论 -
快速获得地址栏问候后面的参数
话不多说, 直接上方法 function getUrlParam() { // var url = location.href.split('?')[1].split('&') var url = location.search.split('?')[1].split('&') //有哈希(#号)取不到值,就用上面注释 var para...原创 2019-05-30 14:59:09 · 286 阅读 · 0 评论 -
最简单的查询全局(window)方法的使用
1. 打开谷歌2. 打开控制台3. 直接敲下要查询的命令, 回车4. 比如要 查询 window.location 的方法5. window 下有哪些方法6. window下的 localStorage 具体有哪些方法, 进入__proto__(隐式原型) 可以查看...原创 2019-05-30 14:12:24 · 852 阅读 · 0 评论 -
搜索 CSDN 上该博主的文章
百度或者谷歌上直接这样搜site:blog.csdn.net 博客名关键词// 或者关键词site:blog.csdn.net 博客名 //关键词后面不要空格site:blog.csdn.net jiandan1127 ES6ES6site:blog.csdn.net jiandan1127...原创 2019-05-30 11:29:19 · 945 阅读 · 0 评论 -
vue 中 axios 全局配置
在请求接口的时候做全局处理, 便于管理和维护axios 全局配置 base.jsimport axios from "axios";import qs from "qs";import router from "@/router";import { EventUtil} from '@/common';const instance = axios.create({...原创 2019-05-09 16:57:46 · 820 阅读 · 0 评论 -
slice,substr和substring的区别
1. 相同点他们都接收两个参数 , 第二个参数都是可选的, 如果忽略, 返回从 第一个参数的开始位置到字符串的结尾slice 和 substring 接收的是 起始位置 和 结束位置(不包括结束位置),substr 接收的则是 起始位置 和 所要返回的字符串长度 。var str = 'helloworld'; alert(str.slice(4,7)); ...原创 2019-04-09 14:48:25 · 1400 阅读 · 0 评论 -
Google JavaScript 风格指南
Google 和 Airbnb 是目前最流行的 JavaScript 代码风格,如果你长期使用 JavaScript 来写代码的话,建议对比看看。在团队开发中,通常需要遵循一定的代码风格,这样有利于团队的协作和代码的可维护性。而 JavaScript 的代码风格其实是有很多的,接下来我们来看看 Google 发布的 JavaScript 风格指南,大致包含了以下部分内容:文件名...原创 2019-02-20 14:32:30 · 411 阅读 · 0 评论 -
前端查找问题的网站
思否 segmentfault MDN web documentMDN CSDNCSDN 博客园cnblogs 简书jianshu 张鑫宇zhangxinyu 常用cdn,cdnjs,npmcdn,bootcdn 大全各类有用的网站 awesomeawesome-bookmarks...原创 2018-12-11 17:49:10 · 543 阅读 · 0 评论 -
ie304报错解决方案
解决方案:1.直接在请求地址后面加一个时间戳或者是随机数如:url: 'user/address?' + Math.random(),2.禁止缓存①前端页面禁止缓存:<meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="cache-control" content="no-cache"...原创 2018-06-11 10:09:42 · 2714 阅读 · 1 评论 -
checkebox 全选 ,子复选框单个全部选择后,全选框也会被选择(js动态创建的input)
html<div><ul id="shops"></ul></div>jsvar string = '<li><input id="allShops" value="" type="checkbox" onclick="queryAll(this)"&am原创 2018-05-31 14:18:23 · 2029 阅读 · 0 评论 -
前端重要的一些网站(工作中遇到随时会增改)
1.bootstrap cdn(所有想要用到的资源都有,搜索打开链接复制代码即可,非常方便)http://www.bootcdn.cn 这里打开链接原创 2018-06-06 10:22:02 · 123 阅读 · 0 评论 -
js合并多个数组并去重(整理)
var arr1 = ['a','b']; var arr2 = ['a','c','d']; var arr3 = [1,'d',undefined,true,null]; //合并两个数组,去重 var concat_ = function(arr1,arr2){ //不要直接使用var arr = arr1,这样arr只是arr1的一个引用,两者的修改会互相...转载 2018-05-28 17:14:13 · 14913 阅读 · 0 评论 -
正则(工作日常)
1.input只能输入数字和浮点数字.<input onkeyup="value=value.replace(/[^\d.]/g,'')">2.input输入手机号码的判断. if (!(/^1[34578]\d{9}$/.test($('#mobileNo').val()))) return alert("手机号码有误,请重填");3.input输入身份证号的判断...原创 2018-05-28 09:56:28 · 200 阅读 · 0 评论 -
常用正则
一、校验数字的表达式1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非零开头的数字:^(0|[1-9][0-9]*)$6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2...翻译 2018-05-28 09:49:06 · 150 阅读 · 0 评论 -
bootstrap-table可编辑
function query() { load('/sellCard/getBatchQuryData', 'get', 'json', { cardPrefix: $('#cardPrefix').val(), //前缀 cardSuffix: $('#cardSuffix').val(), //后缀 cardTypeId: $('#car...原创 2018-05-16 19:28:37 · 404 阅读 · 0 评论 -
设置/读取/删除cookie(整合版)
cookie的介绍:JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的。而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一种情况,在某个用例流程中,由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静...原创 2018-03-14 11:07:57 · 259 阅读 · 0 评论 -
VS code (**.vue文件,语法高亮配置)
1. 第一种方法, 是直接安装 Vetur 插件就行了, 安装成功重新加载一下就行了 (ps: 如果没有变化,卸载了重新安装一下,可能是之前的版本太低了) 2. 第二种方法是,将vue转换成html格式(不推荐,治标不治本) "files.associations": { ".eslintrc": "json", "*.vue": "html" ...原创 2018-03-11 23:37:55 · 28306 阅读 · 3 评论 -
数组或者对象去重
var arr = [] for (let item of data) {//data是获取的json数据 arr.push({label: item.state})//取出里面的state属性值 } for (let i = 0; i < arr.length; i++) { for (let j = i +原创 2018-02-07 15:53:55 · 238 阅读 · 0 评论