- 博客(58)
- 收藏
- 关注
原创 Lodash 使用及常用方法
Lodash 通过降低 array、number、objects、string 等等的使用难度从而让 JavaScript 变得更简单。 Lodash 的模块化方法 非常适用于:1.遍历 array、object 和 string2.对值进行操作和检测3.创建符合功能的函数
2022-04-26 10:43:20
17284
原创 单页应用首屏加载速度慢怎么解决?
1、什么是首屏加载时间?首屏加载时间是指浏览器从相应用户输入网址到首屏内容渲染完成的时间,从用户的角度来说就是:“地址栏输入网址之后网页呈现的速度”。整个网站并不需要全部加载完成,但需要展示当前可视窗口中的内容。2、如何计算首屏加载时间?常用方法:首屏模块标签标记法 统计首屏内加载最慢的图片的时间 自定义首屏内容计算法 借助第三方工具(pagespeed、vue-cli等等)其实很简单,并不需要我们手动去计算。打开F12控制台,然后刷新网页,其中Load就是首屏加载时间。3、
2022-04-13 17:00:00
3650
原创 H5静态网页手端预览
环境准备1、Node.js2、Npm在终端全局安装 anywherenpm install anywhere -g 在你需要的文件夹目录下执行 anywhere anywhere 在手端浏览器输入地址即可 备注: 执行anywhere默认会执行index.html,若执行其他的则在anywhere 文件名就行啦 手机上运行时确保手机和电脑都在一个局域网内...
2022-04-12 14:18:52
600
原创 mac安装vue-devtools
1.到github下载vue-devtools 的压缩包git clone -b add-remote-devtools https://github.com/vuejs/vue-devtools.git2.在vue-devtools目录下安装依赖包cd vue-devtoolssudo npm install然后输入电脑密码(加上sudo为了避免权限问题部分依赖无法安装)3.修改manifest.json文件进入vue-devtools-dev文件夹下的shells .
2022-03-22 10:38:14
2527
5
原创 vue cli3项目搭建流程
简言:注意:Vue 3.0 项目目前需要从 Vue 2.0 项目升级而来一、准备工作npm node.js二、搭建1.搭建vue的开发环境,安装脚手架工具sudonpm install -g @vue/cli2.安装成功后,查看版本是否安装成功vue -V最新版是:@vue/cli 5.0.13.初始化 vue 项目vue create vue3-demo输入命令后,会出现命令行交互窗口;可以选择 Manually se..
2022-03-16 09:45:00
582
原创 NPM切换镜像源
方法一:终端更改npm的配置文件查询或验证当前配置的镜像:npm config get registrynpm切换成淘宝镜像:npm config set registry https://registry.npm.taobao.org方法二: 直接编辑npm的配置文件直接修改registry的地址sass_binary_site=https://npm.taobao.org/mirrors/node-sass/phantomjs_cdnurl=https:
2022-03-15 15:34:12
8674
原创 程序员必备:变量命名神器 CODELF
大部分开发者都或多或少遇到过变量命名的烦恼,如果命名不规范,不仅会影响开发的效率,而且对后面维护的同学来说也是一个不小的挑战。那么接下来就给大家介绍个命名神器
2021-12-13 14:53:11
51028
3
原创 Jenkins前端自动化部署
为了前端项目的工程化,减少项目发布环境的部署,实现自动化集成打包部署。 本文是针对前端项目和gitlab仓库代码,简述jenkins实现自动化部署的配置流程。
2021-12-06 15:00:00
1091
原创 ES6中js的运算符(?.、?:、? ?、? ?=、)
一、空值合并操作符( ?? )空值合并操作符( ?? )是一个逻辑操作符,当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数。 空值合并操作符( ?? )与逻辑或操作符( || )不同,逻辑或操作符会在左侧操作数为假值时返回右侧操作数。const nullValue = null;const emptyText = ""; // 空字符串,是一个假值,Boolean("") === falseconst someNumber = 42;const
2021-12-03 13:15:00
19034
2
原创 vue中使用防抖和节流
一、防抖定义:频繁操作防止抖动,在操作后 n 秒内不操作,才触发事件,若继续操作,则重新计时场景:输入框输入 缩放resize/** utils.js* immediate 是否开始立即执行*/function debounce(func, delay = 300, immediate = false) { let timer = null return function() { if (timer) { clearT
2021-12-02 11:24:25
291
原创 JS中的防抖与节流
函数节流与函数防抖都是为了限制函数的执行次数,以优化函数触发频率过高导致的响应速度跟不上触发频率,出现延迟、假死或卡顿的现象。一、定义 函数防抖:触发搞频率事件后n秒内函数只会执行一次,如果n秒内高频率事件再次被执行则重新计算时间 函数节流:高频率事件触发,但在n秒内只会执行一次,所以节流会稀释函数的执行频率二、防抖(debounce) 1、应用场景search搜索联想,用户在不断的输入值时,用防抖来节约请求资源 window触发resize的时候 ...
2021-06-23 17:56:08
283
1
原创 React中父子组件通信传值
1,父组件向子组件传递 React数据流动是单向的,父组件向子组件通信也是最常见的;父组件通过props向子组件传递需要的信息//父组件class Parent extends Component{ state = { msg: 'start' }; render() { return <Child parms={this.state.msg} />; //父组件引用子组件时,将state状态数据以属性的方式传递给子组件...
2021-04-09 10:31:12
602
原创 React常见的面试题
一、react 生命周期函数 初始化阶段: getDefaultProps:获取实例的默认属性 getInitialState:获取每个实例的初始化状态 componentWillMount:组件即将被装载、渲染到页面上 render:组件在这里生成虚拟的 DOM 节点 componentDidMount:组件真正在被装载之后 运行中状态: componentWillReceiveProps:组件将要接收到属性的时候调用 shouldComponentUpdate
2021-04-09 09:51:27
267
原创 HTML5新特性知识点总结
一、HTML5特性1.HTML5新元素HTML5提供了新的元素来创建更好的页面结构:<canvas> 新元素标签 描述 <canvas> 标签定义图形,比如图表和其他图像。该标签基于 JavaScript 的绘图 API 新多媒体元素标签 描述 <audio> 定义音频内容 <video> 定义视频(video 或者 movie) <source> 定义多媒体资源 ..
2021-02-18 17:01:46
827
原创 Element ui tree树形控件获取当前节点id和父节点id
第一种情况:在有复选框的情况下方法一1.找到node_modules/element-ui/lib/element-ui.common.js文件2.按Ctrl+F搜索TreeStore.prototype.getCheckedKeys这个方法,低版本教程到这一步就直接修改了(具体看上面教程),发现没有找到if(node.checked) 如图:但可以发现它return this.getCheckedNodes 我们搜索这个方法试试(其实这个函数就在当前函数的上面)。如图:将上..
2020-11-26 11:05:10
6753
原创 Element UI 表格 show-overflow-tooltip 设置宽度以及内容换行
前言用vue+element ui框架,用到table表格,如果每列显示的内容过长则可以使用该属性,即:show-overflow-tooltip="true",该属性可以让内容在一行显示,如果显示不下时,显示...,并且鼠标划过时显示全部文字。通常会出现这样的效果:一、设置show-overflow-tooltip宽度样式代码如下:注意:可以在全局添加这样全部生效,如果不想加在全局的话,可以单独加在页面当中,但是切记修改elementui自带样式的话,不能在<style sc..
2020-11-02 13:49:32
30970
4
原创 解决vuex刷新后数据丢失问题
问题:我们在写vue项目的时候,经常要用到vuex作为内存来储存,但是我们存放在vuex中的数据(用户数据,当前页面的数据等等)在刷新后就会丢失,那么如何解决呢?超级简单。这里就位大家推荐了 这款持久化插件vuex-persistedstate。他可以自动帮你存储下面是使用方法:一、安装vuex-persistedstatenpm install --save vuex-persistedstate二、修改store.jsimport createPersistedState fr
2020-10-12 15:17:39
268
原创 Vue中Form报表单v-model动态生成
后台数据结构:var PropertiesArray = [ { "propertyId": 1, "propertyName": "url", "description": null, "serial": null, "dataSourceTypeId": "db" }, { "propertyId": 2, "propertyName": "driver", "descript
2020-07-31 15:40:27
1644
翻译 Vue实现数字翻牌器效果
<template> <div> <div class="head" @click="this.numFun(0,5000)">点击金额变动</div> <div>{{amount}}</div> </div></<template> <script>export default { data () { return { amount: 0 .
2020-07-16 17:32:48
6012
原创 微信小程序常用API详解(路由、tabBar、窗口、事件等)
路由 wx.switchTab wx.switchTab(Object object)跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 参数 属性 类型 默认值 必填 说明 url string 是 success function 否 fail function 否 complete function ...
2020-07-09 10:37:29
1773
原创 JavaScript字符串处理库
一、String.js string.js,或者简称为S,是一个轻量级的JavaScript库(压缩后压缩后小于5kb),用于浏览器或提供额外String方法的Node.js。// 安装npm i string1、between(left, right)——提取左右串之间的字符串。尝试在HTML中的两个标签之间获取元素时可以使用此方法。var S = require('string');S('<a>This is a link</a>').bet...
2020-06-02 15:41:16
321
原创 webpack + vue 打包生成公共配置文件(域名) 方便动态修改,不用重复打包
需求: 原来的项目中域名是打包到项目里面的,打包后不能动态配置,只能通过不同的指令打包来切换域名,每天都在测试域名和正式域名来回摩擦,后台大佬说你们可以生成一个配置文件这样就不用频繁打包了直接修改配置文件就好.方法一: vue中有一个存放外部资源的文件夹static,它里面的文件是不会被打包编译的,所以我们就可以利用外部引入js的方式将我们的想要的数据在index.html中以js文件的方式引入,然后就可以全局使用。 此方法亲测有效!!!!1、在...
2020-05-17 22:19:11
1985
原创 windows10下安装JDK以及环境变量配置
一、建立为文件夹 建立一个命名为Java文件夹,再在Java文件夹里建立一个jdk1.7和jre文件夹二、安装JDK官网: http://www.oracle.com/technetwork/java/javase/downloads/index.html三、安装目录四、环境搭建 1、首先我们新建一个系统变量命名为JAVA_...
2020-01-31 17:52:58
228
原创 elementUI+vue-router实现组件动态面包屑导航
vue-cli项目中—根据路由变换的动态面包屑导航1、在src文件夹下的router/index.js中配置路由const routerMap = [ { path: '/', redirect: 'dashboard', component: Layout, name:'Dashboard', ch...
2020-01-17 09:32:24
3201
原创 vue2项目实战打包优化(webpack)
一、打包后去掉console和警告(uglifyjs-webpack-plugin)优化方案:修改build文件夹中webpack.prod.conf.js的内容如下:new UglifyJsPlugin({ uglifyOptions: { compress: { unused:true, //是否去掉未关联的函数和变量 warnings: t...
2019-12-13 19:51:21
1223
原创 彻底解决Tomcat启动时的中文乱码问题
问题现象:乱码原因:Tomcat命令窗口字符编码(GBK)与显示的字符编码(UTF-8)不匹配解决办法一:通过logging.properties文件修改默认字符编码为UTF-8即可解决。1.打开你安装Tomcat的所在conf目录,本文以apache-tomcat-8.5.45为例。2、将里面的logging.properties文件用编辑器打开3、打开后大约在4...
2019-11-20 17:12:52
1396
原创 Tomcat安装以及环境配置--Windows
一、下载相应的JDK以及tomcat的版本JDK:jdk-1.7.0_79-windows-x64tomcat:apache-tomcat-8.5.45-windows-x64.zip二、JDK的安装请参考:https://mp.csdn.net/postedit/104126204三、tomcat的安装第一步:从官网下载apache-tomcat-8.5.45-windo...
2019-11-20 17:12:23
299
原创 Windows下修改Tomcat默认端口号
一、首先进入tomcat安装目录,进入conf文件夹,找到server.xml文件二、找到Connector标签,红方框中8080位置就是端口号,修改这个端口号注意,有的时候要使用两个tomcat,那么就需要修改其中的一个的端口号才能使得两个同时工作。三、修改了上面的以后,还要修改两处:(1)将 <Connector port="8009" enableLookups...
2019-11-20 17:11:28
1851
转载 Vue-Router升级导致的 Uncaught (in promise)问题
一、前言 在升级了Vue-Router版本到到3.1.0及以上之后,页面在跳转路由控制台会报Uncaught (in promise)的问题二、原因 V3.1.0版本里面新增功能:push和replace方法会返回一个promise, 你可能在控制台看到未捕获的异常三、解决方法 1、在调用方法的时候用catch捕获异常...
2019-10-21 17:41:08
3170
原创 vue-cli使用axios跨域及拦截器的使用
一、axios解决跨域问题1、在main.js中引入axios,并将其设置为vue原型链上的属性,这样在组件中就可以直接 this.$axios使用了import axios from 'axios';Vue.prototype.$axios=axios;2、在config/index.js里面设置ProxyTable代理dev: { // Paths 静态资源文件...
2019-10-18 14:36:17
638
原创 Nginx的安装与配置--windows
一、Nginx的定义与理解 1、Nginx("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低...
2019-09-12 14:47:16
493
转载 解决 Windows 对JDK默认版本问题
今天经理要让装个JDK,我一想我电脑上有啊,本来还庆幸不用浪费时间了。后来又说 1.8版本的不能在这项目组使用。 之后又找1.7版本的开始安装,后来安装提示:已经安装本版本。一查程序才看到,电脑上装了 是哪个版本JDK,惊得一脸之后就开启了漫长的更该版本之路………………一、首先安装1.7和1.8版本的jdk:正常安...
2019-09-12 14:22:24
424
原创 GitHub提交(push)时频繁提示verify email 的问题
最近提交时一直频繁提示验证邮箱,而且还返回403,。百度一天终于要我找到解决办法了。开森当你 git push xxxx的时候会有一个 git push error的错误 :解决办法:第一步:进入 git-bash第二步:输入命令行 git config --show-origin --get credential.helper可以找出你自己电脑的提交代码时使用的账号...
2019-08-28 17:31:25
1399
原创 程序员必须掌握的几种排序算法
常用的几种排序分类 1、插入排序(直接插入排序、希尔排序) 2、交换排序(冒泡排序、快速排序) 3、选择排序(直接选择排序、堆排序) 4、归并排序 5、分配排序(基数排序)1、冒泡排序 冒泡排序(Bubble Sort),是一种较简单的排序算法。它重复地走访过要排序的元素列,...
2019-08-20 16:04:01
448
原创 浅谈Token的理解与机制运用
一、定义概念 Token被翻译成为('令牌','标记')在计算机中的含义也差不错('计算机身份认证安全令牌'),token其实说的更通俗点可以叫暗号,在一些数据传输之前,要先进行暗号的核对,不同的暗号被授权不同的数据操作。二、传统的Seeion验证 Http协议进行数据的提交,服务器接收到用户帐号和密码进行验证,在之后的一系列操作,因为http协...
2019-08-16 10:52:57
748
原创 Vue--methods watch和compute的区别和联系
一、依赖追踪机制 watch和computed都是以Vue的依赖追踪机制为基础,它们都试图处理这样一件事情:当某一个数据(称它为依赖数据)发生变化的时候,所有依赖这个数据的“相关”数据“自动”发生变化,也就是自动调用相关的函数去实现数据的变动。 methods用来定义函数,它需要手动调用才能执行,需要像”fuc()”这样去调用它(假设函数为fuc) ...
2019-08-02 10:32:55
284
原创 vue--实现axios数据请求
一、下载安装插件npm install axios --save二、下载vue-axiosnpm install --save axios vue-axios三、在src/main.js中,导入axiosimport Vue from 'vue'import axios from 'axios'import VueAxios from 'vue-axios'Vu...
2019-07-13 21:37:25
177
原创 微信小程序支付开发具体步骤
一、支付业务流程图展示 地址:https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=2 二、支付步骤流程图展示 地址:https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?cha...
2019-07-09 22:15:18
1033
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人