javascript
文章平均质量分 55
码页面
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
elements upload 的on-error回调函数取不到后端返回的msg信息
文件上传失败时,调用element自带的on-error函数时,打印on-error函数自带的err参数。原创 2023-01-29 10:20:38 · 1078 阅读 · 0 评论 -
导出execl,后端接口返回文件流
导出文件原创 2022-11-16 16:06:38 · 357 阅读 · 0 评论 -
JS事件循环(Event Loop)
JS 的执行是单线程的,所谓的单线程就是事件任务要排队执行,前一个任务结束,才会执行后一个任务,这就是同步任务,为了避免前一个任务执行了很长时间还没结束,那下一个任务就不能执行的情况,引入了异步任务的概念。JS 运行机制简单来说可以按以下几个步骤。所有同步任务都在主线程上执行,形成一个执行栈(execution context stack)。主线程之外,还存在一个任务队列(task queue)。只要异步任务有了运行结果,会把其回调函数作为一个任务添加到任务队列中。一旦执行栈中的所有同步任务执行完毕,原创 2020-11-05 15:58:00 · 170 阅读 · 0 评论 -
element表格应用
合并相同的数据<el-table :data="tableData" :span-method="objectSpanMethod" border style="width: 100%; margin-top: 20px" > <el-table-column prop="numbers" label="期数" width="180"><原创 2020-06-17 21:17:30 · 231 阅读 · 0 评论 -
ES6动态加载css、js
loadScript(src) { return new Promise((resolve, reject) => { var script = document.createElement('script'), head = document.getElementsByTagName('head')[0]; script.type = 'text/javascript'; script.charset = 'UTF-8'; script.原创 2020-05-10 15:40:21 · 1676 阅读 · 0 评论 -
vue过滤器
joinTime: “2019-11-11 20:11:27.0”leaveTime: “2019-11-11 21:25:57.0”<td class="text-center ellipsis" :title="item.joinTime | formatTime">{{item.joinTime | formatTime}}</td>filters:{ ...原创 2019-11-12 10:09:36 · 122 阅读 · 0 评论 -
vue table checkbox单选控制
<table class="table clear" ref="tableDialog"> <tr> <th width="30"></th> <th >帖子</th> <th >作者</th> <...原创 2019-11-07 10:11:30 · 1628 阅读 · 0 评论 -
文字合成为语言 Speech Synthesis API
Speech Synthesis APISpeech Synthesis API非常容易实现。事实上,只需两行代码即可让您的网络应用与用户交流。var utterance = new SpeechSynthesisUtterance('Hello Treehouse');window.speechSynthesis.speak(utterance);speechSynthesis 接口...原创 2019-10-30 14:26:42 · 1253 阅读 · 2 评论 -
节流和防抖
在进行窗口的resize、scroll,输入框内容校验等操作时,如果事件处理函数调用的频率无限制,会加重浏览器的负担,导致用户体验非常糟糕。此时我们可以采用debounce(防抖)和throttle(节流)的方式来减少调用频率,同时又不影响实际效果。节流当持续触发事件时,保证一定时间段内只调用一次事件处理函数。let throttle = function(func, delay) { ...原创 2019-10-24 10:12:28 · 219 阅读 · 0 评论 -
js返回上一页并刷新
/点击浏览器上的返回按钮,返回上一页并刷新 $(document).ready(function($) { if (window.history && window.history.pushState) { $(window).on('popstate', function() { var hashLocation = lo...转载 2018-02-28 10:25:15 · 348 阅读 · 0 评论 -
webpack配置及技巧
标题webpack入门和实战(一)–webpack配置及技巧https://blog.youkuaiyun.com/solar_lan/article/details/82751165https://www.cnblogs.com/cangqinglang/p/8964460.html原创 2019-11-12 10:11:50 · 130 阅读 · 0 评论 -
vue项目解决ie兼容问题
原因是ie不支持es6语法,需要导入依赖包1、npm install --save-dev babel-polyfill2、在main.js中引入: import 'babel-polyfill'原创 2019-08-13 15:35:30 · 462 阅读 · 0 评论 -
dom元素和class常用操作
创建document.createElement()document.createTextNode()克隆document.cloneNode()删除removeChild()替换replaceChild(newnode,oldnode)插入appendChild()insertBefore()把节点插入到父节点的某个兄弟节点的前面。所以他有两个参数,insertB...原创 2019-08-09 10:39:57 · 2276 阅读 · 0 评论 -
单页应用(SPA)和 多页应用(MPA)
单页应用(SPA)第一次进入页面的时候会请求一个html文件,刷新清除一下。切换到其他组件,此时路径也相应变化,但是并没有新的html文件请求,页面内容也变化了。原理:JS会感知到url的变化,通过这一点,可以用js动态的将当前页面的内容清除掉,然后将下一个页面的内容挂载到当前页面上,这个时候的路由不是后端来做了,而是前端来做,判断页面到底是显示哪个组件,清除不需要的,显示需要的组件。这种过程...原创 2019-08-14 10:35:09 · 196 阅读 · 0 评论 -
浅拷贝和深拷贝
浅拷贝var copyObj = Object.assign({}, obj);扩展运算符 var copyObj = { ...obj }Jquery浅拷贝 var copiedObject = jQuery.extend({}, originalObject) 如果改变了originalObject,copiedObject 也会变。深拷贝最简单的方式 JSON.parse(JS...原创 2019-08-14 16:27:13 · 115 阅读 · 0 评论 -
vue查用插件
滚动插件iscrollhttps://iiunknown.gitbooks.io/iscroll-5-api-cn/content/index.html**better-scroll **https://ustbhuangyi.github.io/better-scroll/doc/zh-hans/原创 2019-10-11 16:30:11 · 287 阅读 · 0 评论 -
axios
import Axios from 'axios'// 全局默认设置Axios.defaults.headers['Content-Type'] = 'application/json'Axios.defaults.baseURL = process.env.NODE_ENV === 'development' ? '/rest' : process.env.API_ROOT// 请求...原创 2019-11-12 10:11:40 · 176 阅读 · 0 评论 -
vue之proxyTable跨域
config文件夹下的index.js中module.exports = { dev: { //开发环境 assetsSubDirectory: 'static', assetsPublicPath: '/', //跨域设置 proxyTable: { '/rest': { target: "https://www.xxxx....原创 2019-07-26 09:52:41 · 132 阅读 · 0 评论 -
js中定时器、时间和日期、vue倒计时
定时器: setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。 setTimeout() :在指定的毫秒数后调用函数或计算表达式,执行一次。var timer1=window.setTimeout(function(){},1000);window.clearTimeout(...原创 2019-11-12 10:13:05 · 217 阅读 · 0 评论 -
国内外的前端大牛
https://juejin.im/post/5a9224c6f265da4e710f7786原创 2019-11-12 10:13:29 · 127 阅读 · 0 评论 -
常用正则笔记
RegExp 对象参考手册。http://www.w3school.com.cn/jsref/jsref_obj_regexp.asphttp://www.cnblogs.com/zxin/archive/2013/01/26/2877765.html验证 var str ='asdf1354654'; var reg = /^[0-9]*$/; if (!reg.test(s...原创 2019-11-12 10:13:43 · 124 阅读 · 0 评论 -
动态添加js文件
function loadScript(url, callback, dataName, dataDeps){ var script = document.createElement('script'); script.type = 'text/javascript'; if(dataName){ script.setAttribut...原创 2018-02-24 12:42:02 · 1467 阅读 · 0 评论 -
微信验证前端代码
<form class="login-form" action="" method="post" id="loginForm"> {% csrf_token %} </form><script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"&a原创 2019-11-12 10:13:59 · 157 阅读 · 0 评论 -
input输入的html标签直接显示
例如在input中直接输入<a href="https://www.hao123.com/">测试标题是否可以用html</a>//数据处理,将 < 和 > 替换data.replace(/</g,'&lt;').replace(/>/g,'&gt;')//替换所有标签data.replace(/<[^&l原创 2018-02-08 14:55:32 · 2301 阅读 · 0 评论 -
Sublime Text
Sublime Text快捷键: Ctrl+Shift+P:打开命令面板 Ctrl+P:搜索项目中的文件 Ctrl+G:跳转到第几行 Ctrl+W:关闭当前打开文件 Ctrl+Shift+W:关闭所有打开文件 Ctrl+Shift+V:粘贴并格式化 Ctrl+D:选择单词,重复可增加选择下一个相同的单词 Ctrl+L:选择行,重复可依次增加选择下一行 Ctrl+Shift+L:选...原创 2019-11-12 10:13:14 · 174 阅读 · 0 评论 -
js数组操作
数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些:join() push()和pop() shift() 和 unshift() sort() reverse() concat() slice() splice() indexOf()和 lastIndexOf() (ES5新增) forEach() (ES原创 2018-02-07 17:47:04 · 224 阅读 · 1 评论 -
ajax重写和参数编码
重写$.ajax(function($){ //首先备份下jquery的ajax方法 var _ajax=$.ajax; //重写jquery的ajax方法 $.ajax=function(opt){ //备份opt中beforeSend,error和success方法 var fn = { ...原创 2018-02-03 11:37:52 · 702 阅读 · 1 评论 -
字符串操作
1、length 获取字符串长度var str = "hello world"; str.length //返回 112、索引 通过下标获取字符串指定位置的字符,但是不能改变该索引对应的值var str = "hello world"str[0] = "H";//不会影响str,但也不会报错3、toUpperCase 将字符串全部转为大写原创 2018-02-03 11:14:44 · 535 阅读 · 0 评论 -
input框实时搜索
输入框中输入数据实时获取反馈。类似百度搜索。 连续输入以最后一次为准,间隔500ms。var _ajax,time1,time2,time3 = null;$("#inputUrl").on("input propertychange", function () { if($("#inputUrl").val() == ''){ return }原创 2018-02-01 16:00:49 · 2795 阅读 · 0 评论 -
safari 兼容问题
safari中click() , trigger(‘click’) ,window.open 事件等都不生效,被浏览器禁用。 在本页面打开链接window.location = 'http://www.baidu.com';在新窗口打开链接 function(url) { var winRef = window.open("", "_blank...原创 2018-04-12 15:01:04 · 3317 阅读 · 0 评论 -
抓包工具:Fiddler 修改请求表单和响应数据
原文链接:https://blog.youkuaiyun.com/liuquan0071/article/details/51917893断点 命令介绍: bpu在请求开始时中断,bpafter在响应到达时中断,bps在特定http状态码时中断,bpv/bpm在特定请求method时中断。提示:命令输入区域输入help,回车执行会打开一页面详细介绍fiddler的所有命令。也可以在菜单栏设置断点...原创 2019-11-12 10:12:53 · 247 阅读 · 0 评论 -
div模拟微信输入效果
<div class="main"> <div class="chat-content" id="chat-content"> </div> <div class="chat-ques"> <div contenteditable="true" class="input" v-text="inputData" ref="input" ...原创 2019-07-18 18:12:32 · 330 阅读 · 0 评论 -
随鼠标移动元素
<div ref="toolbar" class="toolbar" @touchmove.stop.prevent="touchmove"></div>touchmove (e) { let ref = this.$refs['toolbar'] let touches = e.changedTouches[0] le...原创 2019-11-12 10:11:13 · 165 阅读 · 0 评论 -
vue组件之间传值
兄弟组件传值创建一个bus.js文件,代码如下:import Vue from 'vue'; export default new Vue();监听传值的组件中引入import Bus from 'utils/bus';mounted(){ Bus.$on('bus_apply_exchange', () => { this.apply...原创 2019-05-16 17:13:54 · 288 阅读 · 0 评论 -
ant-design-vue
table组件循环 <a-table bordered :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" :dataSource="get_list_view" ...原创 2019-11-12 10:12:01 · 271 阅读 · 0 评论 -
递归函数(vue-ant-design 递归加载Tree组件)
getUserInfo(){ const menu = localStorage.getItem('menu'); if (menu === '' || menu === 'undefined' || menu === 'null' ) { return false; } c...原创 2019-05-15 11:12:45 · 2822 阅读 · 1 评论 -
VueJS中学习使用Vuex详解
VueJS中学习使用Vuex详解在SPA单页面组件的开发中 Vue的vuex和React的Redux 都统称为同一状态管理,个人的理解是全局状态管理更合适;简单的理解就是你在state中定义了一个数据之后,你可以在所在项目中的任何一个组件里进行获取、进行修改,并且你的修改可以得到全局的响应变更。下面咱们一步一步地剖析下vuex的使用:首先要安装、使用 vuex首先在 vue 2.0+ 你的v...转载 2019-04-30 16:29:40 · 240 阅读 · 0 评论 -
vue笔记
<div @click="showAll($event)">全部</div>节点 event.srcElement event.srcElement.tagName.toLowerCase() == "span" event.srcElement.parentNode.classList.add("active"); event.srcElement....原创 2019-11-12 10:11:30 · 202 阅读 · 0 评论 -
vue中swiper使用
1.使用静态数据时,页面可以正常滑动,一旦使用动态数据,页面就无法滑动,数据显示也不正常observer:true启动动态检查器(OB/观众/观看者),当改变swiper的样式(例如隐藏/显示)或者修改swiper的子元素时,自动初始化swiper。默认false,不开启,可以使用update()方法更新。new Swiper('.swiper-container', { spe...原创 2019-04-22 13:40:00 · 376 阅读 · 0 评论 -
JS用正则表达式给一个数字的整数部分每三位加一个千位符
function numberWithCommas(n) {// 正则解释: 匹配到 \B(非单词边界)后, 后面要匹配到 (\d{3})+(?!\d)// (\d{3})+ 至少匹配到一次或多次三个数字// (?!\d) 同时后面不是数字的话, 就匹配.// 注意, 后面的(?=)那一段代码只是判断的规则, 匹配到后只替换掉\B// 而\B 元字符匹配的是非单词边界let num =...转载 2019-04-24 19:36:15 · 886 阅读 · 0 评论
分享