- 博客(46)
- 收藏
- 关注
原创 解决jquery-1.11.0.js安全漏洞
这个文件被扫出安全漏洞有XSS攻击等 ,其中一个比较著名的漏洞是在JQuery 1.6.2版本中发现的。该漏洞被称为”attrFn"漏洞,它允许攻击者通过特殊构造的代码执行任意的JavaScript代码。
2023-12-25 09:57:44 642
原创 echarts加钓鱼岛赤尾屿(vue)(亲测有效)
1.首先引入json文件,node_modules/echarts中就有 import chinaData from "../../node_modules/echarts/map/json/china.json" 2.初始化地图,在初始化地图的时候加入钓鱼岛和赤尾屿的数据,在chinaData下的features中加入即可,
2023-08-14 11:30:28 454
原创 前端加密解密和摘要
文档参考官方: https://nodejs.org/api/crypto.html。加密/解密分为:公私钥加密解密、对称加密/解密。
2023-06-30 17:53:34 350
原创 Vue 路由懒加载-问题记录
使用过程中发现不用路由懒加载,刷新页面的时候 watch 监听 routes 并不会触发。一、微服务中使用懒加载: component: () => import(' ')解决方式:利用immediate:true ,触发 routes 执行。
2022-09-30 17:13:32 249
原创 JS 检测输入连续相同字符和递增字符
//1、支持检测递增数字不限出现在任意位置 (确认)//2、支持检测递减数字不限出现在任意位置//3、支持连续出现的字母不限出现在任意位置//4、支持连续出现的数字不限出现在任意位置(确认)//5、支持正向连续出现的字母不限出现在任意位置//6、支持反向连续出现的字母不限出现在任意位置//7、支持检测连续出现的位数 (确认)functi...
2021-11-04 15:51:30 460
原创 Vue自定义指令获取当前this
// 自定义指令 directives:{ drag(el,binding,vnode) { // 函数里面第三个参数vnode 它的vnode.context就是当前的vm实例 constthat = vnode.context } }...
2021-07-26 16:12:43 728
原创 Git切换远程仓库地址
有时候,我们用着用着就要迁移git地址,这时就要切换远程仓库地址。那这时候有什么办法解决呢?有三种办法一、修改命令 (推荐)git remote set-url origin url二、先删后加git remote rm origingit remote add origingit@github.com:lwtcumt/test.git三、修改config文件如果你的项目有加入版本控制,那可以到项目根目录下,查看隐藏文件夹, 发现.git文件夹,找到其中的config..
2021-05-24 14:21:25 142
原创 Vue 监听缓存事件(亲测有效)
摘要: 随着H5的更新,前端经常使用本地存储进行交互处理数据,如果想要监听缓存的变化,以下代码就是您想要的。一、在main创建缓存事件// 监听缓存事件Vue.prototype.$addStorageEvent = function(type, key, data) { if (type === 1) { // 创建一个StorageEvent事件 var newStorageEvent = document.createEvent("StorageEv.
2021-05-07 21:59:30 3076
原创 js list转tree 和 tree转list
摘要:项目必用的数据结构转换;1、list转tree (效率最高的方式) /** * json格式转树状结构 * @param {json:json} json数据 * @param {idStr:String} id的字符串 * @param {pidStr:String} parentId的字符串 * @param {chindrenStr:String} children的字符串 * .
2021-04-08 15:14:25 578
原创 微信小程序点击事件(bindtap)传递参数的方法
小程序在组件上绑定事件后,传递参数的方式不同于前端开发其他场景中直接加参数的方式,小程序在参数的传递时,采用事件对象的自定义属性的方式,具体实现如下:wxml:<view bindtap="goTo" data-index={{item.index}}>点击事件传参</view>js中:goTo: function(e){ // 传递的参数 const index= e.currentTarget.dataset['index'];}利用自定义属性完...
2021-03-18 23:52:51 8125 2
转载 前端路由原理及实现
在单页应用如此流行的今天,曾经令人惊叹的前端路由已经成为各大框架的基础标配,每个框架都提供了强大的路由功能,导致路由实现变的复杂。想要搞懂路由内部实现还是有些困难的,但是如果只想了解路由实现基本原理还是比较简单的。本文针对前端路由主流的实现方式 hash 和 history,提供了原生JS/React/Vue 共计六个版本供参考,每个版本的实现代码约 25~40 行左右(含空行)。什么是前端路由?路由的概念来源于服务端,在服务端中路由描述的是 URL 与处理函数之间的映射关系。在 Web 前.
2021-03-11 16:48:19 256
原创 vue seo解决方案
前言:众所周知,Vue SPA单页面应用对SEO不友好,当然也有相应的解决方案,下面列出几种最近研究和使用过的SEO方案,SSR和静态化基于Nuxt.js来说。1.SSR服务器渲染;2.静态化;3.预渲染prerender-spa-plugin;4.使用Phantomjs针对爬虫做处理。1.SSR服务器渲染关于服务器渲染:Vue官网介绍,对Vue版本有要求,对服务器也有一定要求,需要支持nodejs环境。使用SSR权衡之处:开发条件所限,浏览器特定的代码,只能在某些生命周期钩子函数 (
2021-02-19 17:43:04 367
原创 js运算,解决小数精度丢失问题
由于计算机是用二进制来存储和处理文字,不能精确表示浮点数,而javascirt中没有相应的封装类来处理浮点型运算,直接运算,会出现精度丢失的问题。为了解决这个问题,需找出参数中最大精度,参数都变成整数去计算。具体实现方法,参考如下。/*** 计算,处理精确度丢失* @param {Number} arg1 参数1* @param {Number} arg2 参数2* @param {String} operator 运算符* @param {String} accuracy.
2020-11-24 11:35:14 445 2
原创 js 获取url ?后面的参数,简单实用(亲测有效)
描述:当 ‘’?‘’ 后面有多个参数的时候,非常实用,而不是简单的window.location.href代码: getUrlParam(name) { let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 let r = window.location.search.substr(1).match(reg); //匹配目标参数 if.
2020-10-21 23:38:58 325
原创 Vue 中 slot 插槽的使用
<!-- slot.vue--> <!-- 通过name属性指定具名插槽,没有name属性的为默认插槽--> <slot name="header">我是header</slot> <slot name="main">我是main</slot> <slot :title="title" name="footer"></slot> <slot></slot>//.
2020-08-13 13:53:08 187
原创 Vue + iview + quill (vue-quill-editor)富文本编辑器及插入自定义图片,样式调整
最近公司又这么一个需求,在form表单中对这个富文本编辑器列有必填的长度校验,然而在项目中img会转成base64格式的导致检验失败,因此需要我们自定义图片功能来解决这个问题。
2020-07-24 14:19:04 1749 2
原创 IView textarea 右下角拖动功能bug
tips:最近遇到一个textarea拖动右下角的时候超出当前的容器的最大高度问题。解决方法:加上一个最大高度的样式限制,即可解决。
2020-07-22 10:45:01 285
原创 Vue watch使用及原理
场景:1、监听数据结构复杂的对象(deep) 2、需要初始化立即执行时调用(immediate) refModeIdData: { handler(n, o) { if (n.length === 1) { this.findProTypeCode(n[0]["code"]); } }, deep: true, // 监听数组时可以不写 immediate: true }原理:彻底理解.
2020-07-02 21:26:02 227
原创 微信公众号、H5微信支付(Vue版)
1.H5微信支付后台会返回一个URL,前端直接跳转就OK(需要你传给后台一个ip,必须保证在同一域名下)使用window.location.href =res.data;进行页面跳转到支付界面(res.data)为后台返回的链接,2.微信公众号支付为了唤起支付,首先这里需要我们做两件事,第一去配置jsapi域名,第二配置微信网页授权的回调域名,。构建微信授权的url :https://open.weixin.qq.com/connect/oauth2/authorize?app...
2020-06-09 21:10:12 404
转载 Git pull 强制拉取并覆盖本地代码
git fetch --allgit reset --hard origin/mastergit pull
2020-05-27 10:32:07 270
原创 vm.$attrs 【Vue 2.4.0新增inheritAttrs,attrs详解】
描述:当我们组件嵌套层级多的时候,在Vue单向数据流向下传递需要不断的props又不想用vuex的情况下来实现数据传递1、首先我们来看下vue官方对vm.$attrs的介绍:包含了父作用域中不作为 prop 被识别 (且获取) 的特性绑定 (class 和 style 除外)。当一个组件没有声明任何 prop 时,这里会包含所有父作用域的绑定 (class 和 style 除外),并且可以通过 v-bind="$attrs" 传入内部组件——在创建更高层次的组件时非常有用。猛一看有点看不明白....
2020-05-16 17:44:26 370
原创 vue中移动端使用postcss-px2rem与ui组件冲突问题(亲测有效)
在vue移动开发中,使用px2rem-loader,会自动将px单位换算成rem,但是存在一个问题,会将第三方UI库的px单位转为rem。引入import 'lib-flexible'解绝方式:1.将UI组件中的px全部改为PX,或者在px后加 /*no*/.2.在框架中使用postcss-px2rem-exclude插件,添加exclude属性。在vue-cli2.x中配置:在vue-cli3.0中配置:删除package.json中的"postcss":...
2020-05-16 11:02:54 1507 1
原创 Vue 实现滚动楼层导航定位(可实现监听页面滚动和监听某元素滚动)
实现思路:在vue中使用v-for动态渲染楼层和楼层导航,然后使用原生JavaScript实现楼层导航动态更新与楼层滚动定位1、页面初始化时定位首个楼层2、页面滚动楼层自动定位到相应的楼层导航并高亮显示3、鼠标点击楼层导航时,当前楼层导航高亮显示,并且页面自动滚动到相应的楼层效果页面布局 和 style .floor-nav { // positio...
2020-04-14 10:25:39 4230
原创 Vue el-scrollbar 单文件隐藏横向滚动条(亲测好用)
方法一:常规写法 会导致全局横向滚动条隐藏.el-scrollbar__wrap{overflow-x: hidden;}方法二:使用scoped 时候 ,使用deep/deep/ .el-scrollbar__view { overflow-x: hidden;}...
2020-01-03 18:26:43 1073 1
原创 码云的用法及如何上传项目(亲测好用)
1、如何使用码云:https://jingyan.baidu.com/article/cdddd41cb7466853cb00e1d5.html2、如何上传项目:https://jingyan.baidu.com/article/c1465413e4fc8b0bfdfc4c6f.html推荐好文:https://blog.csdn.net/gxx_csdn/article/details...
2019-11-04 03:07:23 234
原创 vue中封装webSocket 进行数据实时通讯(亲测有效)
第一次在Vue项目中使用websocket,在网上搜索了很多如何在vue中使用的教程和示例:<template> <div class="test"> </div></template><script> export default { name : 'test', data() { ret...
2019-10-29 14:41:14 3276
原创 Vue v-html不能触发点击事件的问题(js交互),求助
背景:前端保存带有html和js的代码片段,在需要的地方后端返前端html格式的数据,前端用v-html解析渲染,标签能成功渲染(此时可以正常显示静态页面),但其绑定的事件无法触发。方案一:方案二:用了以上方法都不能实现,求做过的大神给予帮助!!!!...
2019-10-28 15:43:19 1595
原创 Vue 输入enter刷新页面问题(亲测好用)
问题分析: 当form表单中,只有一个输入框时,按Enter键,会导致表单提交,会刷新页面解决方案: 网上提供了在form上添加@submit.native.prevent发现容易出现不可预测问题最终找到: 在input元素上添加阻止默认表单提交事件 <el-form :inline="true" :model="project" class="demo-...
2019-09-11 14:39:48 514
原创 ES6 Object新方法 最全解释
Object对象是JS的重要核心内容,本篇文章笔者将带着大家一起熟悉下重点的ES6、ES7、ES8新方法。一、Object的遍历属性letobj={name:'李丽',sex:'女',skill:function(){}}//...
2019-09-10 19:16:16 881
转载 js 数组克隆方法总结
ES5 方法总结1.slicelet arr = [2,4,434,43]let arr1= arr.slice()arr[0] = 'a'console.log(arr,arr1) // [ 2, 4, 434, 43 ]console.log(arr1 === arr) // false2. 遍历数组Array.prototype.clone = function(){...
2019-08-26 14:58:34 200
原创 js中处理 await 异步异常以及try、catch、finally、throw 的基本使用
我们在项目中经常遇到报错程序终止执行,无法看到后续代码渲染的内容,尤其是编写异步代码时无法捕捉错误,更是头疼。下面是一个简单的错误处理的小例子。帮助大家提供一个简单思路。async getListData(version2Ids) { let version1Id = getStore({ name: "versionId" }); let projectId = ...
2019-08-13 17:08:15 9764
原创 vue-cli项目包体积过大,完美解决教程
使用cdn打包时,把vue、vuex、vue-router、axios等,换用国内的bootcdn 直接引入到根目录的index.html中。在webpack设置中添加externals,忽略不需要打包的库。externals: { 'vue': 'Vue', 'vue-router': 'VueRouter', 'vuex': 'Vuex', 'axios': 'axios' } ...
2019-07-31 18:30:33 2036
原创 3、vue-cli3项目配置webpack自动删除生产环境的console.log调试信息,附带跨域解决
我们都知道项目在编译打包上生产环境的时候是不能有console.log()信息打印输出的,但是我们在开发环境或者是测试环境有时候调试代码又需要打印输出一些信息,我们也不可能在编译上线的时候把代码里面的console.log()一个一个的全部删除掉,这个时候就需要我们在配置文件里面配置一下,生产环境编译的时候自动去掉console.log()。我们先看下vue-cli3文件结构,webpack相...
2019-07-17 15:46:47 1830
转载 2、vue 源码分析之如何实现 observer 和 watcher以及修改observer数据可能发生的问题
https://segmentfault.com/a/1190000004384515本文能帮你做什么? 。。好奇vue双向绑定的同学, 可以部分缓解好奇心 还可以帮你了解如何实现$watch前情回顾我之前写了一篇没什么干货的文章。。并且刨了一个大坑。。 今天。。打算来填一天。。并再刨一个。。哈哈 不过话说说回来了.看本文之前,, 如果不知道Object.defineProperty,...
2019-07-10 18:21:31 272
原创 webpack中require和import的区别
commonjs同步语法经典的commonjs同步语法如下:var a = require('./a');a.show();此时webpack会将a.js打包进引用它的文件中。这是最普遍的情形,不必赘述。commonjs异步加载在commonjs中有一个Modules/Async/A规范,里面定义了require.ensure语法。webpack实现了它,作用是可以在...
2019-06-22 21:09:17 246
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人