- 博客(62)
- 收藏
- 关注
原创 关于值引用的小总结
原始值和引用值 在 ECMAScript 中,变量可以存在两种类型的值,即原始值和引用值。 原始值 存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。 引用值 存储在堆(heap)中的对象,也就是说,存储在变量处的值是一个指针(point),指向存储对象的内存处。 为变量赋值时,ECMAScript 的解释程序必须判断该值是原始类型,还是引用类型。要实现这一点,解释...
2019-12-30 17:41:49
234
原创 element resetFields老是报undefined
this.nexttick(()=>)//z这种写法可以避免报错if(this.nexttick(()=>{}) //z这种写法可以避免报错 if (this.nexttick(()=>)//z这种写法可以避免报错if(this.refs[formName] !== undefined) { this.$refs[formName].resetFields(); } 至于为啥 我还没明白 知道的也可以帮忙解答一下 ...
2021-08-18 16:40:46
508
原创 js执行顺序问题
在实践中才慢慢明白了js执行顺序问题 遵循事件循环机制,当JS解析执行时,会被引擎分为两类任务,同步任务(synchronous) 和 异步任务(asynchronous)。对于同步任务来说,会被推到执行栈按顺序去执行这些任务。对于异步任务来说,当其可以被执行时,会被放到一个 任务队列(task queue) 里等待JS引擎去执行。当执行栈中的所有同步任务完成后,JS引擎才会去任务队列里查看是否有任务存在,并将任务放到执行栈中去执行,执行完了又会去任务队列里查看是否有已经可以执行的任务。这种循环检查的机制,
2021-08-16 10:42:26
1807
转载 vcli3config配置
const path = require(‘path’) module.exports = { publicPath: ‘./’, // vueConf.baseUrl, // 根域上下文目录 // outputDir: ‘dist’, // 构建输出目录 // assetsDir: ‘assets’, // 静态资源目录 (js, css, img, fonts) lintOnSave: true, // 是否开启eslint保存检测,有效值:ture | false | ‘error’ // runti
2021-06-16 16:22:04
294
原创 vue项目添加水印,防止刷新页面水印消失
引入一个waterMark.js文件之后 IE各种问题 问题1:页面出现空白,登录页面都没有显示出来 问题2:IE低版本(11以下)总是报语法错误 问题1出现的原因是js文件包含箭头函数 问题2出现的原因是const变量 Ie低版本无法识别 呈上js文件 'use strict' let watermark = {} let setWatermark = function(str) { let id = '1.23452384164.123412415' if (document.getEl
2021-06-01 11:33:29
1631
原创 element下拉菜单 获取当前行信息
今天遇到 element 的下拉菜单 针对要获取当前行的信息的 <el-dropdown @command=“c”>(cmmand)=>{handleCommand(command,scope.row)} 下拉菜单 黄金糕 狮子头 螺蛳粉 双皮奶 蚵仔煎 handleCommand(command,row){ if(command===‘a’){ console.log(”执行a事件“) }else if(command===‘b’){ console.log(”执行b事件“
2021-03-03 11:50:35
839
转载 垃圾回收机制和内存泄露问题
浏览器的 Java 具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。其原理是:垃圾收集器会定期(周期性)找出那些不在继续使用的变量,然后释放其内存。但是这个过程不是实时的,因为其开销比较大并且 GC 时停止响应其他操作,所以垃圾回收器会按照固定的时间间隔周期性的执行。 不再使用的变量也就是生命周期结束的变量,当然只可能是局部变量,全局变量的生命周期直至浏览器卸载页面才会结束。局部变量只在函数的执行过程中存在,而在这个过程中会为局部变
2021-02-25 16:58:13
344
原创 js正则表达式用法和实例
一、正则表达式的() [] {}有不同的意思。 ()代表的是同时匹配的字符 如:(abc|bcd|cde),表示这一段是abc、bcd、cde三者之一均可,顺序也必须一致 (abc)?,表示这一组要么一起出现,要么不出现,出现则按此组内的顺序出现 二、方括号是单个匹配,字符集/排除字符集/命名字符集 示例: 1、[0-3],表示找到这一个位置上的字符只能是0到3这四个数字,与(abc|bcd|cde)的作用比较类似,但圆括号可以匹配多个连续的字符,而一对方括号只能匹配单个字符 2、[^0-3],表示找到这一
2021-01-26 12:20:08
1558
原创 nginx命令部署前端代码
有几个工具 xshell MobaXterm可以可视化操作 操作步骤 上传文件 不需要用命令 窗口的上传即可 1、打开 软件 连接要部署的服务器ip 端口号 2、默认是在根目录 ll指令可以查看当前目录下有哪些文件 cd 文件名 (切换到该目录下) 3、删除指令 需要删除原来文件的话 使用 rm -rf 文件名 4、解压zip文件 unzip IAM.zip 按tab健自动补全 下边写一个完整版的指令 前提是已经配置好服务地址 上传完文件了 1.cd nginx1.8 ll cd html rm -rf
2020-12-23 11:23:29
626
原创 vue的computed和watch的区别
首先watch首先是特别的消耗性能的 能用computed的话 尽量使用computed 实现computed的场景 根据某个变量值的变化而变化注:当你有一些数据需要随着其它数据变动而变动时,你很容易滥用 watch 举例说明 我经常要用到时间段 但是需要先经过查询 然后给赋值 然后在导出 所以可以利用computed {{timeget.endTime}}//这个是实时改变的 var vm = new Vue({ data(){ return { timeRange:'',
2020-12-22 17:36:44
456
原创 element日期控件禁用时间汇总
1、只能选择当前月份的 pickerOptions: { //大于当前月分的日期不可选 disabledDate: (time) => { var date = new Date(); var year = date.getFullYear(); var month = date.getMonth() + 1; if (month >= 1 && month <= 9) { month = “0” + month; } var currentdate = year.toSt
2020-12-22 17:23:23
1034
2
原创 解析文本换行符问题
1、自定义的含有\n\r\ es6``可以直接解析 2、后端回传的含有‘尊敬的客户:xxx,\r\n你好’ \r\n解析的话 用正则 var string = strring.replace(/\r\n/,’’) //\一定的多加个烦斜线 要不解析不出来 上边这一步骤的话 页面用v-hmtl是直接可以把解析出来 但是有的需求是要用v-text/v-model的话 需要在进行一步操作 string = strring.replace(/<br/>/,’\n’) ...
2020-12-21 17:10:30
827
1
原创 普通js文件使用vuex的说明
vue组件的用法 mutations同步函数的用法 用法1:this.funcionName() 用法2:this.store.commit("funcionName")actions异步函数的用法用法1:this.funcionName()用法2:this.store.commit("funcionName") actions 异步函数的用法 用法1:this.funcionName() 用法2:this.store.commit("funcionName")actions异步函数的用法用法1:this.
2020-12-04 11:15:35
4995
2
原创 IE导出文件报错问题
一般在google上导出没有问题 导出方法也是后端直接给浏览器跳转 window.location.href = ‘url’ 在IE上如果导出传递的参数有中文的话 会报错 所以用encodeURI(url)就可以了
2020-11-25 20:31:37
563
原创 正则校验${}
身份证 let patter =/1\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]KaTeX parse error: Can't use function '\.' in math mode at position 42: …[1-9]([0-9]+)?(\̲.̲[0-9]{1,2})?)|(^(0){1}KaTeX parse error: Can't use function '\.' in m
2020-11-19 20:13:35
471
原创 element ui table表头错乱问题
table使用时候 动态控制表头 v-if的时候表头错乱 解决办法 {{scope.row.sitename}}
2020-11-09 18:51:23
422
转载 vue强制刷新页面
Vue刷新页面的三种方式 亲测有效 我们在写项目的时候,经常会遇到,用户执行完某个动作,改变了某些状态,需要重新刷新页面,以此来重新渲染页面。如:用户登录成功、增加、删除、更新等。 1.原始方法: location.reload(); 2.vue自带的路由跳转: this.$router.go(0); 用过的人都知道,前两者都是强制刷新页面,会出现短暂的闪烁,用户体验效果不好。 所以,我们选择第三种方式: 3.首先在App里面写下如下代码:(局部刷新) 接下来,我们就可以在需
2020-09-25 16:45:07
4532
原创 vue中使用原生js自定义事件监听
vue项目中引入外部js 需要通过外部js触发vue组件执行某些事件 JS中,最简单的创建事件方法,是使用Event构造器: 事件的定义 var myEvent = new Event(‘event_name’); 但是为了能够传递数据,就需要使用 CustomEvent 构造器: var myEvent = new CustomEvent(‘event_name’, { detail:{ data:‘要传输的值’ }, }); 事件的注册 //假设listener注册在window对象上 window.a
2020-09-22 19:33:08
1890
原创 vue拦截请求添加loading
var queue = {} axios.create({ timeout: 60000 }) axios.defaults.baseURL = baseUrl // request interceptor axios.interceptors.request.use(config => { queue[config.url] = config.url; const token = sessionStorage.getItem(‘Access-Token’) if (token) { config.h
2020-09-04 09:06:27
1270
原创 element table为某一行单独添加样式
1.首先,el-table的标签里要加点东西,就是这个 :row-class-name=“tableRowClassName” 2.当然就是实现 tableRowClassName这个函数啦 tableRowClassName({row, rowIndex }) { if (row.xx < 0) { return ‘success-row’; } 3.在css里实现他的样式 写在《style》《/style》 .el-table .success-row { color: red !importa
2020-08-28 11:27:32
2520
原创 element table禁用复选框
禁用某个复选框的话 在复选框这一行加上 在复选框 加一个事件 :selectable=‘selectEvent’ <el-table ref=“multipleTable” :data=“tableData” tooltip-effect=“dark” style=“width: 100%” @selection-change=“handleSelectionChange”> <el-table-column type=“selection” :selectable='selectE
2020-08-28 11:23:59
1478
1
原创 element 省级级联
省级联动可以直接引入指令了 不需要自己在引入json数据了 vue+element 直接安装指令 npm install element-china-area-data -S 安装之后会可以直接导入六个类型数据 import { provinceAndCityData, regionData, provinceAndCityDataPlus, regionDataPlus, CodeToText, TextToCode } from ‘element-china-area-data’ provinceAn
2020-08-13 11:39:42
325
原创 js 函数提升
//js创建函数有两种方式:函数声明式和函数字面量 函数提升只存在函数声明式中 console.log(f1) //function f1(){} console.log(f2) //undefined var f2 = function(){} //这种叫函数字面量式或者叫句柄 function f1(){} //实际上是这样的 function f1(){} console.log(f2) var f2 = function(){} ...
2020-05-25 17:13:46
763
原创 vue设置proxy代理
顺便说一下跨域问题的解决方法,面试经常问的 解决跨域问题三个方法: 跨域问题主要是前端(发生在浏览器端) 后端不存在跨域问题 一、 jsonp (只能处理get请求) 二、 cores(后端开启) 三、 代理服务器 (前端常用) 下边就写一下vue项目中的配置 在config / index.js proxyTable: { ‘/api’:{ target:‘http://******:18101/’, // API所在服务以及端口号 changeOrigin: true,//开启跨域 pathRewri
2020-05-25 12:20:53
1436
原创 js传递参数
js高级程序设计上说明对象是按值传递的 下面这个经过修改的例子: function setName(obj) { obj.name = “Nicholas”; obj = new Object(); 这个相当于新创建的对象,指向一个新地址 obj.name = “Greg”; } var person = new Object(); setName(person); alert(person.na...
2020-04-17 17:00:12
189
原创 循环语句
常见的循环语句 do while ----while ------for do{ 语句体 }while(); do while先执行在判断 while(){ 先判断在执行 } for-in 语句是一种精准的迭代语句,可以用来枚举对象的属性。 for(var item in obj){ console.log(item)//item就是对象的key } switch等值判断 switch(变量){ ...
2020-04-15 22:38:49
176
原创 引用类型和基本类型的区别
/** * 基本数据类型 * Undefined Null String Number Boolean * * 引用类型 * Object * * JS中变量都是存储在栈内存中 * 基本数据类型是直接存储在栈内存中 值与值之间是独立的 * * 对象类型是保存在队内存中的,每创建一个新的对象,就会在堆内存中开辟一个新空间 * 而变量保存的是对象的内存地址(对象的引用) */ var a = 12...
2020-04-14 22:39:31
244
原创 wx.uploadFile上传图片 在正式环境无响应问题
在测试开发环境都是可以的 等到正式发版之后 发现图片无法上~! 原来正确解法是 需要在微信公众平台 —》开发 下配置一下 然后重启小程序就可以了 ...
2020-04-01 18:44:50
1054
原创 http请求拦截
import axios from ‘axios’ import store from ‘@/vuex’ import {generateUUID} from ‘@/utils/uuIdUtils’ import {Encrypt,Decrypt} from ‘@/utils/cryptoUtils’ import { Message } from ‘element-ui’ export defa...
2020-03-27 14:39:34
738
原创 vue开发子组件是对话框传递值遇到的问题
1、往往在还没有点击确定时候 在父组件中对象值已经过去了 解决办法 在父组件船只的时候把值给 this.tagObject={tagList:JSON.parse(JSON.stringify(this.post.tag)),openProject:true};转化一下 相当于改变指针指向 2、通过组建的方法引入的部分 往往在弹框还没点出来的时候就已经开始执行了 解决办法是 用watch监听...
2020-03-18 17:57:30
310
原创 微信分享默认logo修改
document.addEventListener(‘WeixinJSBridgeReady’, function onBridgeReady() { }); //这个方法现在已经失效 H5现在的分享朋友圈需要微信公众号的资质(微信公众号)
2020-01-20 17:49:17
1519
原创 vue组件之间通信
vue 1.子组件向父组件传递数据信息 通过$emit事件触发 例如:子组件 Vue.component(‘my-footer’,{ template:’’+ '<div class="share">'+ '<div class="img">'+ '<img src="../img/we-chat@3x.png" @click="show()"...
2019-12-27 15:02:28
142
原创 vue+element菜单栏刷新还保持选中状态、面包屑刷新还保持原来状态
首先先解决菜单栏刷新问题 <el-menu :default-active="activedMenu($route.path)" class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose" background-c...
2019-12-27 11:19:12
4646
原创 微信小程序的showToast有时候在ios上不显示问题
加个定时器就好使了 setTimeout(function () { wx.showToast({ title: ‘提交成功’, icon: ‘none’ }) }, 300)
2019-12-26 17:01:55
1747
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅