自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 前端vue router.push或者router.replace频繁跳转报错 导致路由重复报错----Avoided redundant navigation to current loca

vue中使用router.push或者router.replace频繁跳转会遇到报错导致路由重复报错----Avoided redundant navigation to current location: “/about”.

2021-12-02 11:47:46 605

原创 umi使用百度地图~

在umi中使用百度地图百度地图现在是咱们比较常用的地图,由于umi项目默认没有入口的html文件,但是咱们怎么在umi中使用呢?咱们可以使用插件的方式在根目录上创建一个plugin.js的文件,放入一下内容export default (api, opts) => { api.addHTMLHeadScript({ type:"text/javascript", src: 'http://api.map.baidu.com/api?type=webgl&v=1.0&

2021-09-13 16:46:23 731 2

原创 vue3.0的新特性以及快速上手,vue2.0升级成3.0

前端技术更新的非常迅速,我们也不能停下我们学习的脚步,vue3.0也是对学会2.0的开发者非常的友好,能够非常轻松的上手。而且 Vue3中兼容Vue2中定义组件的写法。一、创建一个3.0项目既然要使用vue3.0肯定就是要创建一个vue3.0的项目,我们可以通过以下几种方式创建1、使用vue create 搭建新项目2、使用vueUI前两种可以在选择配置项的时候,选择3.0即可3、已有的vue2.0项目升级成3.0Vue3中兼容Vue2中定义组件的写法,所以只需要将入口文件 main.js

2021-07-09 21:01:39 1003

原创 裂图怎么显示成默认图片,基础原始js面试题

我们在使用图片的时候,经常会遇到图片加载失败的情况我们可以通过一些处理在让他加载默认图片,或者别的图片<img src="https://img0.baidu.com/it/u=297780656,1813209409&fm=11&fmt=auto&gp=0.jpg" alt="" onerror="imgerrorfun()">function imgerrorfun(){ let img=document.querySelector('img

2021-07-05 11:15:02 828 3

原创 react网站国际化,让你的网站变得高大上

i18n:网站国际化react-i18nextnpm i react-i18next i18next --save//两个包 基础包和扩展包创建一个i18n文件夹文件夹下创建configs.ts目录结构如下文件夹下创建configs.tsimport i18n from "i18next";import { initReactI18next } from "react-i18next";// 中文配置jsonimport translation_zh from './zh.js

2021-06-28 21:35:26 303 2

原创 js作用域链 常见面试题

链式作用域"链式作用域"结构(chain scope),子对象会一级一级地向上寻找所有父对象的变量。所以,父对象的所有变量,对子对象都是可见的,反之则不成立。举个栗子 function fn1(){    var n=999;    function fn2(){      alert(n); // 999    }    fn2()  } fn1()...

2021-06-21 08:17:21 593 1

原创 moment时间转换器 vue中filter筛选器的使用 moment的躺过的坑

moment时间转换器的使用npm i moment -Svue filter的使用import moment from 'moment'import Vue from 'vue'Vue.filter('momentTime', (time) => {//挂载到全局过滤器上 return moment(time*1000).format('YYYY-MM-DD HH:mm:ss');//一定要*1000})// Vue.filter('过滤器的名字',回调函数---回调函数的形

2021-06-15 15:41:34 397

原创 js随机数Math.random 随机验证码

随机数公式:Math.floor(Math.random()*(max-min+1)+min);随机验证码let Auth='';//存储验证码let codeStr='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; for(let i=0;i<=4;i++){ Auth+=codeStr[Math.floor(Math.random()*codeStr.length)]

2021-06-09 08:46:26 395

原创 koa、koa2使用crypto加密、加密密码

crypto加密密码下载 cryptonpm i crypto -Sconst crypto=require('crypto)//引入const md5=(content)=>{ let md5=crypto.createHash('md5')//创建 return md5.update(content).digest('hex')//16进制}const getPassword=(pas)=>{ let str=`pas=${pas}$secret=秘钥`

2021-06-06 19:24:45 781

原创 npm发包、更新包、删除包、回退版本号

npm发包1、镜像源必须为npmnrm use 镜像源 //切换镜像源2、注册(到官网注册账号)3、进入到你要发的包中,打开终端4、登录 npm login 输入账号、密码、 email5、npm publish注意!必须要有package.json文件 文件名也要唯一一般情况下的报错409 没切换npm镜像源403文件名冲突删除包npm unpublish 包名@版本号回退到上个版本号npm install 包名@版本号 -S更新npm update 包名.

2021-06-03 09:01:48 3744

原创 命令行工具node自己写快速工具,再也不怕麻烦

node命令行工具下载commander 、inquirernpm i commander -Snpm i inquirer -Sconst program=require('commander')const inquirer=require('inquirer')program.command('create').//创建 description('hello,cli').//提示 action((dir)=>{//操作 inquirer.prompt(

2021-05-31 11:23:32 184

原创 在koa中使用数据库,创建连接池

koa连接池要在在koa中使用数据库,需要创建一个连接池和数据库连接1、下载 npm i mysql -S2、一般在bin同级创建一个db文件const mysql = require('mysql')const pool = mysql.createPool({ //创建连接池 ==> 和数据库连接 host:'localhost',//域名 user:'root',//用户名 password:'123456',//密码 database:'jianhu

2021-05-25 15:43:07 612

原创 koa、koa2中生成token、鉴权

生成token下载 npm i jsonwebtoken -S//生成tokencosnt jwt=require('jsonwebtoken')//1、引入//2、在登录接口生成tokenlet token=jwt.sign( //携带信息 {user,pas} 'abc',//秘钥 {//有效期 expiresIn:'1h'//1h一小时 })ctx.body={ token//3、返回token 是为了挂到请求头上}jw

2021-05-22 10:59:13 994 1

原创 js解决异步的方案

解决异步的方案:1、回调函数 函数里面套函数,容易形成回调地狱2、事件 点击事件触发,事件可控,但是不推荐3、promise .all(全部通过) race(谁跑的快) catch(失败) then (失败)4、async await await:1、期望得到的是一个promise实例 2、如果得到的不是promise实例,会将得到的值装换为promise实例 3、必须等待async后面的语句执行完,再想下执行5、generator yield (星号函数)...

2021-05-21 10:51:01 317

原创 egg、koa、koa2--sql基本语句

可以用在egg或者koa中的基本sql语句sql—基本操作语法不区分大小写SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号select 查找数据SELECT 列名称 FROM 表名称SELECT * FROM 表名称----全选所有数据distinct 选取某一列的所有值SELECT DISTINCT 列名称 FROM 表名称 (选取某一列中所有的值)where 算法条件搜索数据SELECT 列名称 FROM 表名称 WHERE 列 运

2021-05-18 08:14:18 889 1

原创 gulp打包,基础配置

gulp基本配置const {task,src,dest,watch,parallel,series}=require("gulp");//解构出gulp//src读取路径 dest输出路径 task创建任务 watch监视文件 parallel全部执行 series自动加载const htmlmin=require('gulp-htmlmin');//打包htmlconst babel=require('gulp-babel');//ES6转ES5const server=requir

2021-04-13 20:09:44 195

原创 二次封装axios,拦截用户信息,增加请求进度条

二次封装axios,让用户不孤单import axios from 'axios'//引入axiosimport nprogress from 'nprogress'//引入nprogress进度条插件import 'nprogress/nprogress.css'//进度条样式// import Cookies from ' js-cookie '//请求前axios.interceptors.request.use((config)=>{ nprogress.start()

2021-04-06 15:03:53 488

原创 解决VUE和React跨域(添加代理)

VUE和React解决跨域(添加代理)同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。前端在开发的时候,经常会遇到不是一个跨域问题。协议(http、https,ws) 域名(ip) 端口(3000)只有有一个不一样就会出现跨域。那么我们在VUE中怎么解决跨域?VUE解决跨域(添加代理)首先我们在与node_modul

2021-04-01 20:16:17 425 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除