
js
文章平均质量分 70
AndreaH
每天进步一点点!
展开
-
antd 被包裹form元素点击清除图标后,数据未更新问题
bug复现:input/textarea 设置了allowClear属性为true,当点击清除图标后,form中关联的input/textarea 中的值未更新。import React from 'react';import ReactDOM from 'react-dom';import 'antd/dist/antd.css';import './index.css';import { Form, Input, Button } from 'antd';const Demo =原创 2021-11-03 17:55:31 · 1307 阅读 · 0 评论 -
cookie详解
常见的浏览器端的数据存储主要包括cookie、sessionStorage、 localStorage三大类。cookiecookie的出现主要是解决http是无保存状态的协议带来的弊端。原创 2020-08-28 18:00:24 · 421 阅读 · 0 评论 -
组件化和模块化的区别
前言:组件和模块的定位不同。组件一般用于前端,模块化在后台运用的比较多。例如vue中的组件,主要是为了拆分vue实例的代码量,让我们可以以不同的组件来划分不同的功能模块,将来我们需要什么样的功能,就直接调用对应的组件即可。区别:组件化:主要从ui界面上进行划分。例如前端的组件化,方便ui组件的调用。模块化:主要从代码逻辑的角度进行划分,方便代码分层开发,保证每个功能模块职责单一。...原创 2019-10-28 17:49:21 · 7273 阅读 · 0 评论 -
深入理解module.exports、exports、require、export、export default、import
前言:说到module.exports、exports、require、export、export default、import这些,有一点我们是必须要提一下的,就是模块化编程方式。以上这些都是模块之间的导入和导出。什么是模块化当你的网站越来越复杂时,我们往往会遇到一下情况,导致我们生产效率低,可维护性差:恼人的命名冲突 繁琐的文件依赖 历史上,JavaScript一直没有模块...原创 2019-02-27 11:46:20 · 1320 阅读 · 0 评论 -
nodejs 开发企业微信--第三方应用服务商注册应用
最近公司要开发企业微信端的 worktile,以前做的是企业微信内部应用,由于开发的是企业内部应用,所有只适用于私有部署客户,对于公有云客户就无法使用,所有就准备开发企业微信的第三方应用,本文主要介绍在调研阶段遇到的山珍海味。开发之前你需要前注册为第三方服务商,然后用第三方服务商的账号创建应用,创建之后只需要管理员授权应用,第三方服务商即可为用户提供服务。这里我们主要研究第三方服务商注册应用。...原创 2019-02-27 17:06:59 · 938 阅读 · 0 评论 -
cookie跨域问题
最近使用angular做项目,后端走cookie session认证机制,登陆接口服务端有set-cookie,后台也做了跨域处理 ,但是发起请求时浏览器请求里没有携带cookie。一直以为是angular机制引起的,然而跟angular没有关系。跨域请求由于安全性机制,默认是不携带cookie。解决方法:前后端配合,均需要修改。后端:app.all('*', function (req, res...原创 2018-04-03 11:09:42 · 1322 阅读 · 0 评论 -
MIME type 问题的解决
出现背景:在angular项目最后的打包部署阶段,打包成一个dist静态文件夹,其内放置的是一些静态文件,然后在编辑器中直接运行index.html,出现以下错误:Refused to execute script from 'URL' because its MIME type ('text/html') is not executable, and strict MIME type check...原创 2018-04-08 14:43:13 · 18132 阅读 · 0 评论 -
快速排序之优化
快速排序的时间复杂度:最优的情况:O(nlogn)–在每次数组一分为二时均平均分配 最差的情况:O(n²)–在数组完全有序的情况下/超大量重复数组时快速排序的基本算法/*返回P值,使得arr[l...p-1]arr[p]*/function __partition(arr, l, r) { var v = arr[l]; /*arr[l+1...j]v*/原创 2018-01-10 20:48:48 · 360 阅读 · 0 评论 -
angularjs中使用ng-repeat的注意点
1、ng-repeat的数据不能出现重复项问题通常情况下,ng-repeat的数据是不可以重复的,否则就会报错。原因是angular需要一个唯一值可以与生成的dom绑定,以便追踪.解决方案:div ng-repeat="(key,value) in datas track by key">div>2、ng-repeat的性能问题AngularJs 的 ng-repeat 让我们非原创 2018-01-16 11:10:30 · 4651 阅读 · 0 评论 -
JavaScript 内存泄漏教程
一、什么是内存泄漏?程序的运行需要内存。只要程序提出要求,操作系统或者运行时(runtime)就必须供给内存。对于持续运行的服务进程(daemon),必须及时释放不再用到的内存。否则,内存占用越来越高,轻则影响系统性能,重则导致进程崩溃。不再用到的内存,没有及时释放,就叫做内存泄漏(memory leak)。有些语言(比如 C 语言)必须手动释放内存,程序员负责内存管理。char * buffer;转载 2018-01-15 10:43:31 · 283 阅读 · 0 评论 -
随机生成一个长度为n的数组
1、随机生成长度为n,且值在[min-max]范围内function generateRandomArr(n, min, max) { var arr = []; for (var i = 0; i < n; i++) { var random = Math.floor(Math.random() * (max - min + 1) + min); a原创 2018-01-11 14:44:03 · 14271 阅读 · 3 评论 -
form表单校验插件(含详细注解)
说到表单校验,第一个想起来的肯定是jquery的validate.js,该插件的确是很强大,用在项目中也很健壮,但是为什么我选择重新自己封装一个插件呢?为什么要自己封装表单验证插件:1、因为项目中用到的是sea.ja,需要对插件进行封装,而楼主不知如何封装validate.js,和其连带的其他插件; 2、因为项目中不是所有的校验都是通过插件校验的,也要自己手动校验一部分,表单提交时不原创 2017-07-12 10:33:15 · 5603 阅读 · 0 评论 -
dtree常见用法与变形
dTree是个很方便在页面生成树的 js 控件,使用简单。如果你已经大致了解了dtree的使用方法,相信你很容易在页面上显示一颗树来。但是不同的项目需求,造成菜单树的各种变化,因此在介绍dTree的同时,本文着重讲述如何改造dTree,以达到为不同项目所用的目的。dtree使用方式: ①引入dtree.js : dtree功能脚本 ②引入 dtree.css : 样式文件 ③引入 img文件原创 2017-03-07 18:47:44 · 1463 阅读 · 0 评论 -
简单的上下视差滚动
前言: 项目中让实现一个简单的上下视差滚动,就是当页面滑动到某一固定位置时,让上下两页面出现叠加效果,恢复时,展开恢复。功能技术实现方式: 元素定位,鼠标事件思路1:一开始想着设置滚动条监听事件,当到固定位置时下方元素设置relative属性(这样可保证不改变其原有样式而且可以实现元素位置的调整),于是就诞生出一下代码:<!DOCTYPE html><html> <head>原创 2017-03-06 18:44:48 · 1759 阅读 · 0 评论 -
IE和DOM事件流的区别
标准:obj.addEventListener(事件名称,事件函数,是否捕获) 1.有捕获,true为在捕获阶段处理,false为在冒泡阶段处理 2.事件名称没有on 3.this触发该事件的对象 IE(低版本9以下):obj.attachEvent(事件名称,事件函数); 1.没有捕获 2.事件名称有on原创 2016-11-14 14:53:10 · 1030 阅读 · 0 评论 -
IE6的双边距-元素浮动display值为blcok
IE/6出现双边框的原因出现双边距的条件是当浮动元素的浮动方向和margin的方向一致时才会出现。也就是说,并不是只有块状元素左浮动,且具有左外边距时才有这个BUG,当一个盒子右浮动的同时有一个向右的margin-right的时候,IE6也会把margin-right解析为原来的2倍。当有多个同行元素都浮动了,而且都有同方向的margin,则只有最靠近浮动方向的元素有双边距bug。(如果都是一个方原创 2016-11-14 14:14:16 · 459 阅读 · 0 评论 -
display-none-visibilty-hidden
visibility=”hidden” visibility=”hidden”表示(仅)隐藏,不可恢复。当visibility被设置为”hidden”的时候,元素虽然被隐藏了,仍然占据它原来所在的位置。visibility会保留元素的位置。元素被隐藏之后,就不能再接收到其它事件了,也不能再接收响应到事件了,因此也就无法通过JS令其显示出来。 同时,该属性不会引起页面的reflow和repai原创 2016-11-14 14:02:25 · 511 阅读 · 0 评论 -
MVC模式解读
MVC 模式结构 MVC 模式将应用分为模型、视图和控制器三个部分: 1. 视图:数据的展现(V)。 视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并能接收用户的输入数据,但是它并不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能改变模型。视图还能接受模型发出的数据更新事件,从而对用户界面进行同步更新。 2. 模型:应用对象(M)。 模型是应用程序的主体部分。原创 2016-11-14 13:50:20 · 412 阅读 · 0 评论 -
js中关于逻辑符号的连续使用问题
连续比较问题最近在做购物车页面,涉及到最大购买量和最低起订量,而恰恰我们使用的正常数据在最大购买量于最低起订量之间,于是乎就出现了lessData<normalData<bigData; 乍一看没有任何问题,可是当运行的时候发现并不如人意,后来做了一个简单demo,大家可以随便去试,<!DOCTYPE html><html lang="en"><head> <meta charset=原创 2016-11-10 16:18:44 · 3056 阅读 · 2 评论