技巧
文章平均质量分 50
小蟹蟹蟹蟹
这个作者很懒,什么都没留下…
展开
-
web自动化程序selenium+chromedriver
前期准备安装node.js 下载node:https://nodejs.org/en/初始化项目安装selenium-webdrier 在自己本地创建一个文件夹selenium-begin 使用cmd 进入selenium-begin文件夹 输入 npm init 初始化项目,根据提示,用默认选项即可。 npm install selenium-webdriver --save</code> 即可自动帮我们下载 selen...原创 2021-01-27 10:31:49 · 290 阅读 · 0 评论 -
组件的check
1.在修复问题时发现,项目中基础组件可以从父组件传递数据到子组件,来控制子组件的check,可以用来简化多余check2.使用公共函数validInputBox 来检测组件input中的的内容, 调用check函数检测3.子value 双向绑定数据,根据单项父传子的validate中的规则来过滤value值是否合格,在把结果传回父async function validInputBox() { for (let i = 0; i < arguments.length; i++) {原创 2020-09-30 17:40:06 · 202 阅读 · 0 评论 -
Vue项目代理设置
1.在vue.config.js中的devServer 里设置proxy2.proxy 是对象,例: '/iss': { target: 'http://' + proxyIpAddress, // 设置你调用的接口域名和端口号.别忘了加http changeOrigin: true // 允许跨域 }, '/iss/config_file.html': { target: 'http://' + proxyIpAdd原创 2020-09-30 17:33:50 · 1270 阅读 · 0 评论 -
异步执行
异步,es5以前是使用回调函数,回调函数缺点是变成回调地狱,代码不简洁,现在一般使用es6的promise 和es7的 async, async 比promise更简洁1. promise的使用例子const makeRequest = () => getJSON() .then(data => { console.log(data) return "done" })makeRequest()2. async 是es7新增方法.原创 2020-09-30 17:33:12 · 152 阅读 · 0 评论 -
常规for循环和forEach,map 等区别用法
1. 常规for 循环使用支持break 跳出循环,return跳出循环和执行函数返回值,而forEach 使用时用于改变数组,return无法跳出循环,break会报错 ,不能跳出循环和函数返回。map是return可以返回一个新数组,break会报错,不能跳出循环和函数返回。例:for return例:for break例:forEach , return 无效 例: map ,return 返回一个新数组,即使,第二个是为undefined...原创 2020-09-24 10:26:36 · 1419 阅读 · 0 评论 -
vue 强制刷新子组件
问题: 多个子组件的多份数据,在父级修改数据时,另一份数据在子组件中出现变动,但子组件未刷新解决: 只要让子组件强制刷新就可以获取到props传递过来的值了. 利用v-if的特性, 在父组件中强制刷新子组件.<Son v-if="sonRefresh"></Son>data(){ return { sonRefresh: true }}// 下面这段内容写在父组件获取值的地方this.sonRefresh= false;th...原创 2020-08-13 11:08:06 · 602 阅读 · 0 评论 -
项目中slot-scope的用法
插槽slot的作用,是给组件留位置可以在另一个组件中增加不需复用的内容。slot-scope这个属性,我在AT-GS950/28PS V2项目中发现之前我暂未用到,与正常插槽相比是可以传递数据,叫做作用域插槽在Table这个公共的组件中,都是插槽内容,slot-scope 可以获取到tableData这个数据,并且这个数先是用v-model传到公共组件table用value来接收,在用slot-scope的特性传回到父组件tip:父组件tip:子组件...原创 2020-08-11 14:01:25 · 3409 阅读 · 0 评论 -
Git提交本地和导出diff
Git提交本地和导出diff1.git status //查看修改2.git fetch //拉取最新代码3.git rebase //合并拉取的代,fetch到内容,一定要rebase。如果使用git pull 会自动合并4.git add /view.index //写入某文件到缓存区。// add . 所有修改文件写入缓存区5.git commit //提交到本地仓库中。 // i 插入描述内容, 按shift和:进入命令, wq 保存提交, q 退出6.git log -2 //查看提原创 2020-08-10 10:12:44 · 3396 阅读 · 0 评论 -
promise和async结合使用
await命令是强制其他代码等待,直到Promise完成并返回结果使用小贴士:async函数完全可以看作多个异步操作,包装成的一个 Promise 对象,而await命令就是内部then命令的语法糖。原创 2020-07-30 17:06:30 · 1310 阅读 · 0 评论 -
vue组件的自调用(递归调用)
需求:封装一个树形组件,数据结构如下所示,但是层级不确定。treeData:[ {text:1,children:[ {text:2,children:[{text:5},{text:'55'}]}, {text:3}, {text:4}, ]} ]因为层级不确定,那么就存在组件递归调用的可能。通常我们在封装vue组件时会有一个name的属性,它就是用来进行递归调用的。<tem...原创 2020-07-27 18:21:39 · 1115 阅读 · 0 评论 -
vue的内置组件slot
vue的内置组件slotvue有很多内置的组件,有component,transition, transition-group, keep-alive, slot;其中slot(插槽)官方文档的解释为内容分发的出口,官方解释很抽象,我们不如直接来根据名字插槽来理解,即留出一个位置,你可以插入任何你想显示的东西例如文本或者hml标签为什么要用slot?vue最大的特性就是组件化,在实际项目开发中都会封装公用组件,增强代码复用性。而公用组件就是要可以在多处引用,这就要求网站多处的渲染解构或效果要完全原创 2020-07-27 16:35:11 · 171 阅读 · 0 评论 -
vuex中mutation和action的区别
一、vuex中mutation和action的详细区别const store = new Vuex.Store({ state: { count: 0 }, mutations: { increment (state) { state.count++ } }, actions: { increment (context) { context.commit('increment') }原创 2020-06-23 14:43:55 · 1853 阅读 · 0 评论 -
Vue 优化
一、vue代码层面1、路由懒加载当打包构建应用时,Javascript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了。2、代码模块化咱们可以把很多常用的地方封装成单独的组件,在需要用到的地方引用,而不是写过多重复的代码,每一个组件都要明确含义,复用性越高越好,可配置型越强越好,包括咱们的css也可以通过less和sass的自定义css变量来减少重复代码。3、for循环设置key值在用v-for进转载 2020-06-22 15:16:27 · 164 阅读 · 0 评论 -
cookie的使用
// 取得cookiefunction getCookie(name) { var nameEQ = name + '=' var ca = document.cookie.split(';') // 把cookie分割成组 for (var i = 0; i < ca.length; i++) { var c = ca[i] // 取得字符串 while (...原创 2020-02-04 00:06:52 · 169 阅读 · 0 评论 -
通用的事件侦听器函数
1.事件侦听示例var EventUtil = { //根据情况分别使用dom2 || IE || dom0方式 来添加事件 addHandler: function(element,type,handler) { if(element.addEventListener) { element.addEventListener(typ...原创 2020-02-02 21:11:48 · 445 阅读 · 0 评论 -
如何避免原型链上面的对象共享
1.利用原型来继承,通过增加一个空的函数来避免原型链上的对象共享 var a = {name:“小明”}; var b = cloneObj(a); function cloneObj(obj){ var f = function(){}; f.prototype = obj;...原创 2020-02-01 23:08:29 · 704 阅读 · 0 评论 -
使用文字隐藏 flex布局 失效的问题
解决办法:给包含文字元素的父元素设置min-width: 0总结:white-space:nowrap会影响flex布局下未设定宽度的元素,而只要对元素的宽度有一个下限设定就可以解决这个问题,不管是最小宽还是直接的宽度都ok...原创 2019-12-24 09:50:22 · 387 阅读 · 0 评论 -
css小技巧 移动端背景高宽等比例自适应
移动端背景等比例缩放,一般实现方法是,直接使用css3的background-size,但是有缺陷,高度不能固定缩放,如果高度background-size: 100% 100%; 图片会变形,还有实现方法是用js来控制高度。如果用css来实现,在网上找半天终于找到一种方法,宽度100%,图片都能等比例小技巧,就是padding-bottom是按照父元素的宽度比计算的,而不是按高度算,...原创 2018-10-25 10:28:08 · 5269 阅读 · 0 评论