- 博客(52)
- 收藏
- 关注
原创 配置环境变量
npm config set prefix "D:\node\node_global" npm config set prefix "D:\node\node_cache"
2024-07-05 16:36:40
275
转载 解决vue create 创建项目,不能使用上下键选择模板的问题
使用 git bash 创建vue项目时候,无法使用上下键盘按键选择创建模板,4.即可使用键盘上下键选择。
2023-10-16 09:09:01
479
原创 响应式布局之REM
REM是实现响应式布局的方案之一,除了REM之外,还有VM、REM+VM,今天主要来记录一下REM的实操,在vue.config.js中配置
2023-05-21 16:10:31
300
转载 Git 提交代码时 Please enter a commit message to explain why this merge is necessary...的解决办法
Git 提交代码时 Please enter a commit message to explain why this merge is necessary...的解决办法
2023-02-16 09:58:49
2753
原创 cors后台配置项
/ 预检测存活时间(过滤 options请求)// 允许前端获取哪个请求头(允许返回的头)下面以express为例设置。// 设置哪些源可以访问接口。// 允许携带cookie。// 允许携带哪个头访问。// 允许访问请求的方法。......
2022-08-07 08:15:36
449
原创 react.PureComponent原理与实现
React.PureComponent 与 React.Component 的区别在于 React.PureComponen实现了 shouldComponentUpdate(),PureComponent 会对 props 和 state 进行浅层比较,没有变化就不进行渲染,可以提高性能。
2022-06-17 15:29:45
450
原创 ESLint校验
ESLInt是校验我们 js 代码规范的,需要安装相关loader,yarn add eslint eslint-loader -D配置写在webpack.config.js中,module下的rules里,如下:module.exports = { ... module:{ rules:[ { test: /\.(js|jsx)$/, enforce: "pre",//强制优先执行
2022-05-26 15:33:35
1866
原创 webpack配置es6、es7转es5
目录es6高级语法转换一 (箭头函数等)es6高级语法转换二(class等)es6高级语法转换三(装饰器)es6高级语法转换四(异步语法generater、promise)es6高级语法转换五(includes等方法)es6高级语法转换一 (箭头函数等)安装插件yarn add babel-loader @babel/core @babel/preset-env -D说明:babel-loader 转换加载器@babel/core Babel的...
2022-05-26 14:36:37
1673
原创 .gitignore文件不生效解决方法
创建git仓库,忘记创建 .gitignore 文件,导致提交的时候检测出一堆 DS_Store / node_modules 等无需提交的文件,这个时候添加 .gitignore 文件,如果是还没有提交,重新打开下编辑器就好了(编辑器是VS Code)如果已经有过提交,修改了 .gitignore 文件,导致 过滤不生效,就需要使用以下命令解决: git rm -r --cached . git add . git commit -m 'update .giti...
2022-05-05 10:04:03
3904
原创 sh: nodemon: command not found
nodemon 需要重新安装npm uninstall nodemonsudo npm install -g --force nodemon
2022-04-27 16:53:54
1265
原创 webpack 热更新原理解析
一、什么是 HMRHMR 全称 Hot Module Replacement,中文语境通常翻译为模块热更新,它能够在保持页面状态的情况下动态替换资源模块,提供丝滑顺畅的 Web 页面开发体验。1.1 HMR 之前在 HMR 之前,应用的加载、更新是一种页面级别的原子操作,即使只是单个代码文件发生变更都需要刷新整个页面才能最新代码映射到浏览器上,这会丢失之前在页面执行过的所有交互与状态,例如:对于复杂表单场景,这意味着你可能需要重新填充非常多字段信息弹框消失,你必须重新执行交互动作才会重新弹出
2022-04-25 16:02:43
6146
原创 [webpack-cli] Invalid options object. Dev Server has been initialized using an options object that d
[webpack-cli] Invalid options object. Dev Server has been initialized using an options object that does not match the API schema.- options has an unknown property 'contentBase'. These properties are valid: object { allowedHosts?, bonjour?, client?, c...
2022-04-25 11:22:59
2553
2
原创 sass笔记(一)
1、body.ie举例来说,当用户在使用IE浏览器时,你会通过JavaScript在<body>标签上添加一个ie的类名,为这种情况编写特殊的样式如下#content aside { color: red; body.ie & { color: green }}/*编译后*/#content aside {color: red};body.ie #content aside { color: green }2、属性嵌套nav { border:
2022-04-22 13:59:37
214
原创 在vue中使用snap.svg的方法
下面介绍我使用的方法:1、利用imports-loader来引入snapsvg需要安装snap和imports-loadercnpm i snapsvg --save-devcnpm i imports-loader@0.8.0 --save-dev说明及注意事项:imports-loader版本要小于1.0.0(我开始装了最新版本3.1.1,会报错) snapsvg和imports-loader最好都装在devDependencies中2、在main.js 中引入sna
2022-03-04 11:33:00
1607
原创 node学习-订阅发布模式与开发者模式
1、用fs.readFile()来演示订阅发布模式fs.readFile 是异步的,什么是异步,相对于同步来说,同步是指一个任务执行完毕,并拿到结果,才能执行下一个任务,异步就是不必等一个任务执行完毕,就开始执行下一个任务,而要想拿到下一个任务的返回结果就需要使用回调函数。所以异步是不能立即拿到返回值的,要通过回调的方式取回结果。const fs = require('fs') // 引入node中的fs模块const path = require('path') fs.readFile
2022-02-17 14:37:26
455
原创 高阶函数学习
1、什么是高阶函数满足以下任意一点就是高阶函数:一个函数返回一个函数 一个函数可以接收一个函数2、高阶函数可以解决什么问题在不影响其他已有方法的前提下,扩展原有方法function say(args){ //我们需要对say方法进行扩展,但是不能修改源代码 console.log('say',args)}// 在函数的原型上扩展 是公共的, say.before 是say自己的Function.prototype.before = function(cb){ // say
2022-02-16 22:39:32
144
原创 Reflect.ownKeys和Object.keys
Reflect.ownKeys返回所有的属性不管是不是可枚举Object.keys返回可枚举的属性var obj = { a: 1, b: 2}Object.defineProperty(obj, 'method', { value: function () { alert("Non enumerable property") }, enumerable: false})console.log(Object.keys(obj))// ["a", "b"]consol
2022-02-16 15:34:28
200
原创 vue 中对监听esc事件,退出全屏的问题解决
vue 的项目中使用了 h5 的全屏 API,在使用esc键退出全屏时,默认调用“ document.exitFullScreen() ” 直接退出,想要做监听并设置业务,需要监听屏幕size变化来出发事件mounted() { let that = this window.addEventListener('resize', function () { if (!that.isFullScreen()) { // 非全屏状态...
2022-02-16 14:37:41
3093
原创 gitee报错“remote: [session-1f47159e] Access denied“的解决方法
这种情况出现在2个git账号切换的时候,需要清除上一个账号的信息,重新输入当前的账户和密码$ git config --system --unset credential.helper
2022-02-15 22:12:37
16459
4
原创 如何使用vs code的debug调试插件
1、创建启动文件2、添加配置,然后把原来的删掉launch.js{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "v..
2022-02-15 15:27:28
1902
原创 vue 报错 { parser: “babylon“ } is deprecated; we now treat it as { parser: “babel“ }
{ parser: "babylon" } is deprecated; we now treat it as { parser: "babel" }
2022-02-14 13:21:44
2626
原创 vue性能优化总结
1、v-if 、 v-show 的使用 v-if 会根据条件渲染DOM,来回切换条件会导致节点重复编译渲染与销毁。 而 v-show 则是无论条件是否为真都会渲染DOM,只是通过css 的 display 属性来控制节点是否显示。 所以,如果条件只是在初步渲染时执行或者改变很少,就用 v-if ,如果需要预渲染、或者需要频繁切换显示就使用 v-show。...
2021-11-29 22:13:57
276
原创 用 FileReader 对象 读取Excel表格并渲染
读取Excel表格并渲染html页面<el-button type="primary" size="mini" @click="importExcel">导入</el-button><input type="file" v-show="false" ref="input_file" accept=".xlsx" @change="importF" />js事件,需要结合XLSXimport XLSX f.
2021-11-26 17:36:28
1881
原创 用FileReader对象 上传图片
应用场景 ——上传图片 原生的 input ,设置大小并把透明度设为0,其他样式自己设计就好html,根据设计图自己设计即可 <div > <span> <!-- 加号 ➕ --> <img src="@static/images/icon/add_img.png" /> <...
2021-11-26 15:55:00
1164
原创 .eslintrc.js 配置
/*** 配置文件是可以有层次结构的 可以继承的* 进行代码需要首先把源代码转化为抽象语法树(后面会有在的篇幅讲AST 和 babel)*/module.exports = { root:true,//根配置文件 extends:'airbnb', // 启用extends 继承,继承自 airbnb,需要把上面 root注释掉 parser:'babel-eslint', parserOptions:{ sourceType:'module', .
2021-11-18 23:40:48
1841
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人