- 博客(96)
- 问答 (2)
- 收藏
- 关注
原创 Angular: FormArray 数组表单控件,允许用户手动修改页面表格的数据
Angular: FormArray 数组表单控件,允许用户手动修改页面表格的数据
2024-01-22 15:14:57
549
原创 计算两个时间相差多少小时、分钟、秒
例如: 2023/4/26 17:10 和 2023/4/26 18:21 之间相差了 1小时10分1秒(01:10:01)计算出两个时间之间相差的多少小时、分钟、秒。
2023-04-26 18:01:31
1227
原创 LeetCode 47:全排列Ⅱ(Javascript 解答)
原题目给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。示例1:输入:nums = [1,1,2]输出:[[1,1,2], [1,2,1], [2,1,1]]解题思路这个题跟第 46 题唯一的区别是 nums 中有重复的元素,那么就会导致会有相同的解集。比如说示例1 :如果还是用 46 的解题思路,那么解集:[[1,1,2], [1,2,1], [1,1,2], [1,2,1], [2,1,1], [2,1,1]]题目要求全排列,不重复,那么
2022-05-10 15:41:22
581
原创 leetCode 46:全排列(Javascript 解答)
原题目给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例2:输入:nums = [0,1]输出:[[0,1],[1,0]]解题思路题目说到不重复,那么只需要用一个数组来标记已选择过的元素。下一轮递归时,跳过这个元素即可。这个题很简单,实在没什么解题思路了代码var permute =
2022-05-10 14:55:32
517
1
原创 LeetCode 40:组合总和Ⅱ(Javascript 解答)
原题目给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的每个数字在每个组合中只能使用 一次 。注意:解集不能包含重复的组合。示例 1:输入: candidates = [10,1,2,7,6,1,5], target = 8,输出:[[1,1,6],[1,2,5],[1,7],[2,6]]示例 2:输入: candidates = [2,5,2,1,2]
2022-05-07 16:13:01
433
原创 React-路由架构-Route中的render 不显示页面的问题
使用 react-router-dom 的版本是 5.3.0整体路由架构这里不详细说明,仅针对路由配置中关于 Route 的 render 的使用进行分析。页面实现效果当本地存储中没有 token 授权,重定向到 login 页面,否则进入 Sandbox 页面错误使用export default function IndexRouter() { return ( <HashRouter> <Switch> <Route pat
2022-04-14 13:37:17
1904
原创 启用React-devtools后,项目报错
我安装的是 最新版本的 v3 分支上的 react-devtools,根据官方文档一系列操作下来安装好了,然后运行项目报一下错误:但是之前项目是正常运行的,于是上网搜索,发现大多数都是说直接禁用掉 react-devtools 这个插件,就无语,那我还安装它干啥??嫌内存太多??于是我又看了眼报错信息,然后根据如下报错信息按照它的路径把我项目中对用的这段代码注释掉,然后重新 yarn start,就没有报错了网上看了下,说这个是版本的原因,说之前的旧版本没有这个问题。就酱,拜!...
2021-10-05 18:18:44
743
1
原创 安装nvm后安装配置 npm、cnpm。之前安装的nodejs的配置是否要删掉
文章目录nvm安装nvm配置环境安装全局 npm安装 cnpm安装/管理 nodejsnvmnvm是让你在同一台机器上安装和切换不同mode版本的管理工具,为了解决node各种版本存在不兼容现象安装nvm注意:如果你之前下载过 nodeJs,要先卸载干净,再来安装 nvm下载下载地址 —选择nvm-setup.zip》双击安装文件》选择nvm的本地安装目录,这里注意,nvm的安装路径名称中最好不要有空格(最好放在根目录下)我放在了D盘的 nvm文件夹中 D:\nvm
2021-09-11 16:45:33
4823
1
原创 Chrome浏览器安装vue调试工具遇到问题及过程
现在进官网下载的 Chrome浏览器vue调试工具是最新版本的不能用 npm install 安装,要使用 yarn但是 我全局安装 yarn 成功了,yarn -version 也得到了 yarn的版本可 yarn install 还是失败了,原因找了很久还是找不到浪费了很多时间,索性放弃安装最新的,选择安装v5.1.1版本的下载链接:vue-devtools-5.1.1然后就可正常安装流程了:1、解压压缩包2、打开 cmd,进到解压的文件夹中3、npm install (建议
2021-08-22 15:54:18
759
原创 Chrome浏览器安装vue调试工具 npm install错误:ERESOLVE unable to resolve dependency tree
这是因为npm7.x的版本比npm6.x更严格npx -p npm@6 npm i --legacy-pe即可正常 npm install
2021-08-22 14:47:32
402
原创 npm i 碰到的错误 : reason: getaddrinfo ENOTFOUND registry.npm.taobao.org1
Npm config delete proxyNpm config delete https-proxy执行以上两行代码即可正常下载
2021-08-19 16:29:37
3905
原创 关于一个原型链的误区
今天复习原型链的时候,发现有个误区(我自己的,不知道你们有没有),先看代码function Fn() { this.test1 = function () { console.log('test1'); } } console.log(Fn.prototype); Fn.prototype.test2 = function () { console.log('test2'); } var fn = new Fn(); console.l
2021-07-30 02:42:09
163
原创 安装Vue工具,以及遇到的错误 vue : 无法加载文件 npm run dev -4058错误
文章目录vue : 无法加载文件npm run dev -4058错误1、先提前创建一个文件 ,我这里创建Vue,进到这个目录下 shift+右键 打开 PowerShellD:\webstormObject\Vue> npm install -g vue-cli // 这里安装的是Vue22、使用webpack模板创建一个vue项目,项目名字可以自定义D:\webstormObject\Vue> vue init webpack projectvue : 无法加载文件
2021-07-27 10:33:22
1178
原创 ‘cnpm‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
再安装node的目录下新建两个文件夹,我安装在 d:\Node 下npm_modules: npm 安装的全局模块所在的路径npm_cache: 缓存cache的路径创建完成之后,分别执行下面两条命令进行配置。npm config set prefix “D:\Node\npm_modules”npm config set cache “D:\Node\npm_cache”全局安装cnpm和nrm执行命令npm install -g cnpm --registry=https://reg
2021-07-18 00:41:23
484
原创 npm上传包出现403错误
错误如下:原因可能如下:1、qq邮箱没有验证解决:进邮箱点击验证**注意:**进邮箱的浏览器和注册npm账号的浏览器要一样,否则会发生 cookie的错误2、package.json中的name 有人之前已用过解决:将package.json的name 改成其他的名字即可...
2021-07-17 14:30:48
906
原创 cmd报错:Error: could not open `C:\Program Files\Java\jre1.8.0_121\lib\amd64\jvm.cfg‘
如果你环境都配置完成,还是出现错误cmd报错:Error: could not open `C:\Program Files\Java\jre1.8.0_121\lib\amd64\jvm.cfg’原因可能是PATH中%JAVA_HOME%\jre\bin配置太过靠后,将其移到C:\Program Files\Common Files\Oracle\Java\javapath的下一行即可,如下图...
2021-07-16 13:21:18
521
原创 初步了解nodeJs
Node 是什么?:node 使构建在chrome V8 引擎上的一个JavaScript 运行环境nodejs具备模块系统导入其他模块,用 require(),这是个全局变量,在任何模块、任何文件都可以使用node中全局变量不是很多在node中顶层对象不再是window,压根不存在window,也没有document对象。而是global(全局的意思)node.js 跟chrome浏览器非常相似,相同点:不管是node 还是 chrome ,使用的语言都是Javascript语言。所以
2021-07-11 15:39:36
405
1
转载 align-items和align-content的区别
原文链接:https://blog.youkuaiyun.com/cc18868876837/article/details/88138057在用 flex布局时,发现有两个属性功能好像有点类似: align-items和 align-content,乍看之下,它们都是用于定义flex容器中元素在交叉轴(主轴为 flex-deriction定义的方向,默认为row,那么交叉轴跟主轴垂直即为column,反之它们互调,flex基本的概念如下图所示)上的对齐方式,那么它们之间有什么区别呢?本文通过实例代码来对此展开研究
2021-06-29 19:57:51
351
原创 jsonp
说到Ajax,就涉及到跨域访问的问题解决跨域访问的方法:1、CORS2、反向代理3、jsonp : 纯前端能实现的跨域,前两者不能。jsonp是什么?利用script的src跨域访问资源,而后台对应的返回一个函数调用,然后把JSON数据放在函数的参数里面返回给前端所以它是JSON使用的一种模式如果后台没有写对应jsonp接口,那么就请求不到了。都得通过后台的允许。jsonp作用: 跨域获取数据。jsonp的实现原理script的src属性具备: 跨域请求资源的能力那么可以通过
2021-06-19 19:45:44
174
原创 本地存储(localStorage)
只读的localStorage 属性允许你访问一个Document 源(origin)的对象 Storage;存储的数据将保存在浏览器会话中。localStorage 类似 sessionStorage,但其区别在于:存储在 localStorage 的数据可以长期保留;而当页面会话结束——也就是说,当页面被关闭时,存储在 sessionStorage 的数据会被清除 。cookie也用来存储数据,但是cookie不适合存储太多数据因为cookie有个特性:每次请求后台的时候,cookie所有的
2021-06-19 15:22:40
4799
1
原创 cookie
什么是cookie?一个正常的项目需要前台和后端,后端给前端提供服务,前端利用后端提供的服务跟用户进行交互这就涉及到关于数据的传输,数据传输涉及到HTTP协议HTTP是无状态的,用户在每次访问的时候对于HTTP而言都是一次全新的访问,压根不会保留当前用户之前或者说上一次访问的访问状态但是我们往往需要记录历史访问状态,比如: 保存登录状态,当登录了账号后,下次访问就是已登录状态,那么就用到了cookie打开百度搜索页面,F12打开控制台,点击Network:由于cookie每次都会发送到后台,那
2021-06-17 01:01:14
2341
原创 滚轮_阻止默认行为_滚零事件兼容
滚轮事件onmousewheel 滚轮事件 火狐不兼容兼容火狐 : DOMMouseScroll虽然type不同,但是DOMMouseScroll 不能使用DOM 0级绑定滚轮的滚动方向 :主流览器: e.wheelDelta 向前滚动:150的倍数 向后:-150的倍数火狐: e.detail 向前滚动:-3的倍数 向后:3的倍数window.onload = function () { document.addEventListener("mousew
2021-06-15 13:04:41
484
原创 创建标签元素、createElement、appendChild、createDocumentFragment
栗子:<style> * { margin: 0; padding: 0; } #box div{ width: 100px; height: 100px; background: pink; } #box p { width: 100px; height: 100px; background: cornflowerblue; } </st
2021-06-02 15:23:32
559
1
原创 setAttribute、getAttribute、removeAttribute
问题:下面两者的区别box.setAttribute("liang", "456");box.liang = 789;<body> <div id="box" liang="123"></div></body><script> const box = document.getElementById('box'); /*// 标签里元素里的自定义属性 box.setAttribut
2021-06-01 17:30:29
479
原创 Generator、async 解决异步编程
Generator生成器,生成Iterator接口对象的生成器yield 可暂停函数,yield 后面的值可返回出去,且不终结函数进行故generator函数一次执行可返回多个值// Generator函数格式 (带*)function* fn2() { yield 1; yield 2; return 3; } fn(); // 不输出修改成以下代码:function* fn2() { yield co
2021-06-01 13:54:40
235
原创 Promise
Promise一个容器,保存着某个未来会结束的事件(通常是一个异步操作)的结果当有大量的计算时,整个系统会卡住,都会使用异步的方式 [回调地狱: 回调嵌套] 来进行组织代码回调嵌套不容易找出报错的地方为解决回调地狱的问题,ES6提供了Promise栗子:setTimeout(() => { console.log("shenme"); }) console.log("liang"); // liang 会比 shenme 先输出如果想
2021-06-01 00:46:18
175
原创 Proxy
用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种 “元编程”,即对编程语言进行编程Proxy 可理解成,在目标对象之前架设一层 “拦截” ,外界对该对象的访问,都必须先通过这层拦截,因此提供了一些机制,可对外界的访问进行过滤和改写。Proxy 原意是 “代理”,用在这表示由它来 “代理” 某些操作,可译为 “代理器”。let o = { a: 1, b: 2 } let obj = new Proxy(o, { // target -
2021-05-30 21:50:56
1071
空空如也
关于相对定位和绝对定位出现的问题
2021-06-24
第一次点击无效,点击第二次才响应
2021-05-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人