自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(99)
  • 资源 (2)
  • 收藏
  • 关注

原创 Vue3+TS+Vite 找不到模块“@/components/xxx/xxx”或其相应的类型声明

Vue3+TS+Vite 找不到模块“@/components/xxx/xxx”或其相应的类型声明

2024-03-16 16:24:53 1087

原创 certificate has expired or is not yet valid:npm和node证书过期问题

在 1 月 22 日,淘宝原镜像域名()的 HTTPS 证书正式到期。如果想要继续使用,需要将 npm 源切换到新的源(),否则会报错。创建vue项目时出现报错:看官网发现需要安装node18版本以上,安装时出现以下报错:发现镜像到期了,在 1 月 22 日,淘宝原镜像域名()的 HTTPS 证书正式到期。如果想要继续使用,需要将 npm 源切换到新的源(),否则会报错。

2024-03-13 17:56:49 816

原创 linux上nvm 默认指向system更改

nvm use stable 指定的版本。

2023-06-20 11:15:59 431

原创 npm安装electron失败的解决办法

npmrc配置路径(如果没有,则执行npm config set registry https://registry.npm.taobao.org就会生成该文件)修改.npmrc配置文件内容,改成。

2023-04-19 11:11:02 963

原创 gitee提交代码记录与注册账号不符的问题

本地有多个git库,gitee的代码提交时显示的用户名与gitee的账号不符的问题,会导致统计不到提交的代码数。然后,将 .git / config文件中的email修改为你设置的邮箱 就可以了。注意:如果在提交时遇到一下这个问题,就将 邮箱设置 的 不公开邮箱地址的勾选去掉。登录gitee,找到设置中的邮箱管理,新增一个我的邮箱。

2022-09-07 14:50:32 1257

原创 Promise 对象详解

💡 前端异步编程经历了几个阶段。💡 目前在简单场景使用 callback,复杂场景使用 promise 和 async/await,由于generate 的api不易理解并且不易于使用,所以很少使用。

2022-08-07 18:38:59 759

原创 JavaScript之字符串常用方法

JavaScript之字符串常用方法

2022-07-04 19:21:05 754

原创 nginx获取request中的cookie并在response中返回

开发时,遇到一个棘手问题,调用别人的接口,但是需要将request中的cookie作为参数传递。由于我们域名下的 cookie httpOnly属性为 true,所以前端无法使用 document.cookie 获取。找到的解决方案有:一、通过后台接口获取cookie【我想出来的方案】后台获取到$_REQUEST中的cookie,并从接口返回给前端二、通过配置nginx作为响应头传递【领导还是你领导,赞👍】 location ^~ /yjymoa/itsm...

2022-02-24 21:59:31 4452

原创 基于CentOS快速搭建LNMP环境【分布搭建】

阿里云官方搭建教程拷贝yum install vim unzip screen wget一、安装MySQL数据库1、执行以下命令,下载并安装MySQL官方的 Yum Repositorywget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpmyum -y install mysql57-community-release-el7-10.noarch.rpmyum -y install mysql

2022-02-24 11:34:56 239

原创 linux上安装nvm、node

linux安装nvm,nvm管理node

2022-02-20 10:34:16 2664

转载 基于Linux(CentOS)快速搭建LNMP环境【使用LNMP安装包一键搭建】以及升级PHP版本

Linux(CentOS)搭建PHP+Nginx+MySQL环境教程

2022-02-20 09:39:15 3160

原创 项目中使用 阿里巴巴矢量图标库 iconfont

将选中的图标加入购物车 将购物车中的图标加入到项目 将代码库下载到本地 将解压后的文件放到本地代码库【红框中的四个】 将iconfont.css中的iconfont改成icon,具体如下 代码里将此css引入即可使用 // 引入阿里图标库import './static/css/iconfont.css';// 组件库中使用<AtIcon prefixClass='icon' value="good" color={is_like === 1 ? '#ff4d4f' : '#3e

2021-07-22 18:34:43 212

转载 JavaScript模块化

模块化的含义:把逻辑分块、各自封装、相互独立,同时自行决定引入哪些外部模块以及暴露自身的哪些模块。模块化的好处:避免命名冲突(减少命名空间污染) 更好的分离,按需加载 更高复用性 高可维护性JS中常见的模块:1. IIFE模式:匿名函数自调用(闭包)环境:浏览器端原理:利用闭包原理创造出一个独有的函数作用域来保护私有变量例子:<script type="text/javascript" src="module.js"></script><

2021-07-05 14:53:04 168

原创 Taro实现小程序搜索框滚动实例

实现结果:

2021-06-08 16:11:42 912

原创 Linux下设置mysql允许远程连接

解决步骤查找 配置文件中bind-address = 127.0.0.1修改为 0.0.0.0(解决远程连接的问题)grep -r ‘bind-address’ /etcvim 查找到的文件地址在mysql配置文件中增加 dns反解析(解决mysql连接慢的问题)[mysqld]skip-name-resolve重启mysqlservice mysql restart查找命令:配置文件中的修改:...

2021-05-10 10:41:13 264

原创 IE Button按钮下 a标签href失效

解决方案:1、在button上加onclick事件<Button type="primary" onClick={() => window.open(`${PUBLIC_PATH}g/activity/create`, '_self')}> 创建新活动</Button>2、a标签样式写成button的样式

2021-04-14 18:22:15 312

原创 antd request中window.g_app._store.dispatch失效

问题:使用window.g_app._store.dispatch失效(session过期,后端返回401错误,但是没有跳转到登录页)在全局调用dva的数据及dispatch方法(比如:request.js里调用)解决方案:window.g_app._store.dispatch改用getDvaApp()._store.dispatch 就可以了import {getDvaApp} from 'umi';/** * 401 错误处理方法 */const error401Han..

2021-04-14 17:56:07 1747 1

转载 JavaScript常见的操作数组的函数方法

函数作用join()将数组中所有元素都转化为字符串连接在一起sort()将数组中的元素排序(会改变原数组)reverse()将数组中的元素颠倒顺序(会改变原数组)concat()将多个数组或数连接起来,组成一个新的数组slice()返回指定数组的一个片段或子数组splice()在数组指定位置插入或删除元素(会改变原数组)push()在数组的尾部添加一个或多个元素(会改变原数组)pop()删除数组的最后一个元素,并返回该元素(会改变...

2020-11-18 22:32:18 557 3

原创 js 将字符串中的大写变成小写,小写变成大写

/** * js 将字符串反转 */function strReverse(str) { var tmp = str.split(''); return (tmp.reverse()).join('');}console.log(strReverse('abcdef'))/** * js 将字符串中的大写变成小写,小写变成大写 */function strChange(arg) { var str=arg.split(''); for(var i = 0;

2020-11-16 22:57:35 6985

原创 js 面试题(递归思路)

题目:定义一个多层嵌套的对象 {a:{b:{c:1}}},写一个函数,如果传入 ‘a,b,c’ 则返回true,否则返回false/** * {a:{b:{c:1}}} * 如果传入a,b,c 返回true 否则false */function validate(str) { let obj = {a:{b:{c:1}}}; let arr = str.split(','); const valid = (i, newObj) => { if (i =

2020-11-15 21:43:51 990

原创 js实现等差数列,杨辉三角,斐波那契数列,九九乘法表

/** * 等差数列 */function print1(start, value, endKey) { let arr = []; for (let i = 0; i < endKey; i++) { arr.push(start + (i * value)); } console.log(arr);}print1(1, 2, 10);/** * 杨辉三角 * 需求:打印到第n行 */function repeat2(m, n)

2020-11-11 22:40:26 1480

转载 CSS单位px、em、rem、vh、vw、vmin、vmax

1、px:相对长度单位。像素px是相对于显示器屏幕分辨率而言的。2、em:相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。3、rem:相对长度单位。r’是“root”的缩写,相对于根元素的字体大小图示:4、vh and vw:相对于视口的高度和宽度,而不是父元素的(CSS百分比是相对于包含它的最近的父元素的高度和宽度)同屏幕等高的框:.slide { height: 100vh }与屏幕同宽的标题,h1{ font-size

2020-11-03 15:25:54 247

原创 JavaScript增加节点和删除DOM节点

效果图(点新增,input框增加):html代码:<div class="content" id="factoryName" style="width:35%"> <div style="width:100%;display: inline-block; margin-right: 30px;"> <input style="width: 80%;margin-bottom: 10px;margin-right: 10px;" class="num_test r

2020-10-21 22:20:45 171

原创 鼠标事件 onmouseover、onmouseenter、onmouseleave和onmouseout

触发时机:onmouseout:鼠标滑出onmouseover:鼠标滑过(在表面经过即可)onmouseenter:鼠标进入(进入到里面)onmouseleave:鼠标离开onmouseover 和 onmouseenter 的区别:onmouseover 和 onmouseout 存在冒泡机制onmouseenter 和 onmouseleave 不存在1、打开页面时,鼠标刚好在这个元素上,会触发 onmouseover,不会触发 onmouseenter2、onmouseover

2020-10-14 18:31:47 3971 2

转载 理解和使用ES6中的Symbol

ES6中引入了一种新的基础数据类型:Symbol,不过很多开发者可能都不怎么了解它,或者觉得在实际的开发工作中并没有什么场景应用到它,那么今天我们来讲讲这个数据类型,并看看我们怎么来利用它来改进一下我们的代码。这是一种新的基础数据类型(primitive type)Symbol是由ES6规范引入的一项新特性,它的功能类似于一种标识唯一性的ID。通常情况下,我们可以通过调用Symbol()函数来创建一个Symbol实例:let s1 = Symbol()或者,你也可以在调用Symbol()函数时传入

2020-08-28 11:03:47 128

原创 antd - 表单中集成富文本编辑功能【BraftEditor】

首先安装 braft-editornpm install --save braft-editor完成安装后就可以引用 braft-editor和cssimport BraftEditor from ‘braft-editor’;import ‘braft-editor/dist/index.css’;组件里的应用// 第一步const controls = [ 'undo', 'redo', 'separator', 'font-size', 'line-hei..

2020-08-05 17:22:39 4885 1

原创 react中实现简单倒计时关闭页面

首先在constructor中设置5秒的时间值constructor (props) { super(props) this.state={ seconds: 5, dlgTipTxt: '5s后关闭页面' }; }componentDidMount中添加定时器componentDidMount () { let timer = setInterval(() => { this.setState((preState) =>({.

2020-07-01 12:41:11 980

原创 渲染模式 - 标准模式(standards mode) 和 兼容模式(quriks mode)

标准模式与怪异模式产生原因在W3C标准出台以前,浏览器在对页面的渲染上没有统一规范,产生了差异(Quirks mode或者称为Compatibility Mode);由于W3C标准的推出,浏览器渲染页面有了统一的标准(CSScompat或称为Strict mode也有叫做Standars mode)。渲染模式浏览器会通过识别DTD(document type definition 文档类型定义)而采用相对应的渲染模式浏览器解析HTML方式兼容模式(混杂模式、怪异模式):quriks mo

2020-06-21 14:48:03 1819

原创 antd - 实现拖拽功能

最近开发,需要实现一个新功能:拖拽卡片到另一位置// 需要拖拽的Card<Card draggable={true} onDragStart={(e) => this.handleDragStart(e)> {contents}</Card>// 可放置的位置<Button block onDrop={e => this.handleDrop(e) onDrapOver={e => this.handleDrop(e)}>

2020-06-05 14:12:27 7529

原创 ant-design-pro 的 Charts 组件库 服务器打包出现的问题

本地环境没有问题,测试环境 npm run build 之后,访问出现如下错误,百度尝试了各种方法,都无效,最后发现是因为我安装的bizcharts的版本跟ant-design-pro的版本不一样,然后我重新安装了bizcharts和bizcharts-plugin-slider,...

2020-04-26 11:31:03 1033

原创 创建10个a标签 点击弹出对应序号

错误写法:var i, afor (i = 0; i< 10; i++) { a = document.createElement('a'); a.innerHTML = i + "<br>"; a.addEventListener("click", function(e) { e.preventDefault(); alert(i); }) documen...

2020-02-26 20:26:26 415

转载 Cookie、Session、Token、JWT(Json Web Token)

什么是认证(Authentication)通俗地讲就是验证当前用户的身份,证明“你是你自己”(比如:你每天上下班打卡,都需要通过指纹打卡,当你的指纹和系统里录入的指纹相匹配时,就打卡成功)互联网中的认证:用户名密码登录、邮箱发送登录链接、手机号接收验证码只要你能收到邮箱/验证码,就默认你是账号的主人什么是授权(Authorization)用户授予第三方应用访问该用户某些资源的权限...

2020-02-07 16:31:38 433 1

转载 React-class component 和 function component 的区别

1、function component:function aa(props) { return <h1>this is {props.name}</h1>}2、class component:class bb extends React.Component { render() { const { name } = this.props; retur...

2020-02-04 12:17:25 1732

原创 JS基础知识 - 单线程、异步和同步

1、异步与同步的区别基于 JS 单线程的机制异步不会阻塞代码执行同步会阻塞代码执行2、异步的应用场景网络请求:如 ajax、图片加载定时任务:setTimeout、setInterval3、理解ES6的 Promise,解决的是 callback hell(回调地狱)的问题4、手写 Promise 加载一张图片function loadImg(src) { const ...

2019-12-10 10:58:51 154

原创 JS基础知识 - 作用域、自由变量、闭包和 this 的使用

1、作用域作用域分为:全局作用域、函数作用域、块级作用域2、自由变量一个变量在当前作用域没有定义,但被使用了向上级作用域,一层一层依次寻找,知道找到为止如果到全局作用域都没找到,则报错 XX is not defined3、闭包闭包其实是作用域应用的特殊情况,有两种表现:函数作为参数被传递函数作为返回值被返回// 函数作为返回值function create() {...

2019-12-03 11:02:39 204

原创 JS基础知识 - 手写简易jQuery 考虑插件和扩展性

代码如下:class JQuery { constructor(selector) { const result = document.querySelectorAll(selector); const length = result.length; for(let i = 0; i < length; i++) { this[i] = result[i]; } ...

2019-11-29 17:52:13 230

原创 JS基础知识 - 继承、原型与原型链的理解

class下面举例说明(Student、Teacher 继承People类):class People { // 构造函数 constructor(name) { this.name = name; } eat = () => { console.log( `${this.name} eat something` ) }}class Student ...

2019-11-29 11:05:50 173

转载 JS基础知识 - JS 值类型和引用类型的区别

javascript中变量类型分为值类型(基本数据类型)和引用类型(1) 值类型:String(字符串),Number(数值),Boolean(布尔值),Undefined,Null(2) 引用类型:Array(数组),Object(对象),Function(函数)值类型和引用类型的区别(1) 存储位置不一样① 值类型的变量会保存在栈内存中,如果在一个函数中声明一个值类型的变量,...

2019-11-28 14:27:54 194 1

原创 JS基础知识 - JS 类型转换的情况

什么情况下会出现类型转换?1、字符串拼接2、== 判断3、if 语句和逻辑运算1、== 与 === 分别在什么情况下使用?// 什么情况下用 == 或者 ===// 除了 == null 之外,其他的一律用 ===const obj = {x: 20};if (obj.x == null) {}// 相当于:// if(obj.x === null || obj.x ===...

2019-11-28 10:52:11 165 1

原创 JS基础知识 - 引用类型实现深拷贝的代码

首先,简单赋值:const obj1 = { age: 22, name: 'xxx', address: { city: 'beijing', }, arr: [1,2,3,4],}const obj2 = obj1;obj2.arr[0] = 11;console.log(obj1);结果展示:深拷贝的实现:const obj1 = { age: 22,...

2019-11-27 18:25:45 101

最新版面试宝典(1).pdf

最新版面试宝典(1).pdf

2021-06-18

iwebshop 微商城的配置

iwebshop 微商城的配置

2015-05-13

空空如也

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

TA关注的人

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