前端
chp-22
上得厅堂,下得厨房!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
V8引擎,JS,Node,Npm介绍
V8,Node,Js,Npm原创 2022-07-21 16:01:52 · 1316 阅读 · 0 评论 -
事件循环机制
事件循环机制原创 2022-02-02 15:24:42 · 1314 阅读 · 0 评论 -
异步的几种实现方式
异步的几种实现方式原创 2022-02-02 14:38:03 · 2723 阅读 · 0 评论 -
虚拟列表优化性能的简单Demo
angular写法: <!-- 虚拟列表滚动 --> <div class="list-view" #visibleList (scroll)="handleScroll()"> <!-- 使用一个不可见元素(.list-view-phantom)撑起这个列表,让列表的滚动条出现 --> <div class="list-view-phantom" [ngStyle]="{'height': contentHeight}"></d原创 2021-10-19 16:38:10 · 497 阅读 · 0 评论 -
用防抖,节流来优化性能
看文章时了解了防抖,节流两个概念,觉得可以优化项目中输入框输入内容时多次调用接口的问题。**防抖:**开始输入内容时设定一个计时器,如果在计时器之内又有内容则不调用接口,重新开始计时<input type="text" class="form-control" [(ngModel)]="seoCon" (keyup)="onBounce()" placeholder="Search for..."> // 输入事件 onBounce() { let debounceAjax原创 2021-09-15 16:50:26 · 196 阅读 · 0 评论 -
引用hammer左右滑动后上下滚动失效
需求加了一个左右滑动的功能,但在加完之后发现页面不能上下滚动了。>头秃<查资料发现,有个属性可以轻松解决此问题:在需要操作的区域加上 touch-action:'pan-y'touch-action 属性:指定某个给定的区域是否允许用户操作,以及如何响应用户操作 (比如浏览器自带的划动、缩放等)。1、auto当触控事件发生在元素上时,由浏览器来决定进行哪些操作,比如对viewport进行平滑、缩放等。2、none当触控事件发生在元素上时,不进行任何操作。3、p原创 2021-02-02 11:44:52 · 1361 阅读 · 0 评论 -
移动端蚂蚁组件(antd-mobile)- 解决日期组件中的语系问题
目标:期望:我们项目需要有繁简体两种语系,对于一般的选择器是有可配置文案的属性的,但是日期选择器却没有。通过研究还是发现了这个属性是可以配置语系问题的。试过之后发现竟然就是没有我需要的繁体(zh_TW)。无奈之下,只能研究看这些语系是怎么写的,我仿照写个繁体的语系文件放到包里,但很快这个想法被我pass了,一个是因为语系并不是直接写在这些文件里的,另一个因为我们项目较多,人员也多,万一下次不是我改,别人可能就不知道到底怎样修改。于是又产生了另一个想法,包不能改,那我就在文原创 2020-08-24 10:24:45 · 1368 阅读 · 0 评论 -
浅拷贝和深拷贝
现象:数组通过=赋值后,修改新数组会改变原数组。解决方案:1、用es6的扩展方法【...】2、slice, concat原理:1、js中存储对象时的存储方式是用指针指向内存地址,用=赋值只是将指针赋给了新数据,实际指向的内存地址并没有变化。浅拷贝只是拷贝指针,深拷贝才是将指针连同内存一起拷贝。2、(...)取出所有可遍历属性,拷贝到当前数组或对象中。let bar = { a: 1, b: 2 };let baz = { ...bar }; // { a: 1,...原创 2020-07-10 14:51:44 · 159 阅读 · 0 评论 -
nz-range-picker 默认展示当前月和上个月
现有需求要求今日及以后日期禁用,所以打开控件时还显示下个月就不符合实际需要。现状:目标:解决思路:看过文档之后,排除了采用官方提供的属性,方法;发现控件有上个月 (翻页上键)的方法,所以就想我可不可在打开日期面板时就触发翻上个月的方法呢。解决方法:<dw-range-picker class="range-picker" style="width: 90%;" dwFormat="yyyy-MM-dd" [dwAllowC..原创 2020-07-10 13:54:16 · 2509 阅读 · 0 评论 -
在一个数组中过滤掉另一个数组的中的数据
arrA:[ {'user_id': 11, 'user_name': '张三', isObject: false, ...}, {'user_id': 55, 'user_name': '李四', isObject: false, ...}, {'user_id': 77, 'user_name': '陈一', isObject: false, ...}]...原创 2020-04-12 17:42:46 · 2624 阅读 · 0 评论 -
前端如何在angular和vue项目中进行实时数据过滤
//假设后端通过接口给我们的数据如下:let data = [ { name: 'Andy', age: 13 }, { name: 'Jack', age: 14 }, { name: 'Lucy', age: 12 } ]//在实际项目中,我们需要根据筛选框中的条件来实现...原创 2020-03-10 13:59:14 · 390 阅读 · 0 评论 -
angular和vue的动态组件详解
现在敲动态,按需加载,可复用的代码成为我们的目标,所以就我在angular和vue框架中使用动态加载组件的一些心得做个分享。废话不说,直接上代码:Angular<ng-template dynamicComponent></ng-template>// 首先为我们的组件找个容器ng-template, 并且创建指令dynamicComponent首先写个...原创 2020-03-10 10:03:38 · 742 阅读 · 0 评论 -
for,forEach,for...in,for...of,map比较
1、首先for(let i = 0 ;i < arr.length ; i++){...}写法复杂,但是内部可扩展性强,可跳出循环。2、forEach致命缺点不能用return,break跳出循环。3、for...in es5特性,遍历时返回健名,所以适合遍历对象。4、for...of es6新特性,遍历时返回健值,可以搭配entries(),keys(),values()使用let arr = ['a', 'b', 'c'];for (let item of arr.e...原创 2020-03-07 20:17:58 · 812 阅读 · 0 评论 -
ios的微信公众号界面中打字键盘收起后原本页面中的点击事件失效
首先交代一下,我是用angular写的公众号项目,在点击按钮出现的弹框中打字,调起了ios的虚拟键盘,当键盘收起时,发现弹框中的点击事件失效了。其实我做过实验,就是打字完成后不点击键盘中的“完成”按钮,直接点击弹框中的按钮就是可以的,但我不可能控制用户的操作,所以只能重新找方法。既然找到原因,那就去查资料,果然早在2018年底,就有人提出这个问题,因为ios12.x系统升级,所以部分iphon...原创 2020-03-07 19:56:30 · 494 阅读 · 0 评论 -
angular引用管道pipe时踩的坑(Type UmberUnitPipe is part of the declarations of 2 modules:)
我的管道pipe都是统一引入到模块pipeModule中,再在app.module.ts中import这个模块的umberUnit.pipe.tsimport { Pipe, PipeTransform } from '@angular/core';import { DomSanitizer } from '@angular/platform-browser'@Pipe({ n...原创 2020-01-14 10:20:04 · 1410 阅读 · 2 评论
分享