跳到主要内容

js设计模式

js设计模式 设计思路 业务逻辑与界面逻辑分开,让他们的耦合性下降。 需求增加,不修改产品源代码 工厂模式 应用场景 jQuery —————— $'div' React.createElement vue 异步组件 单列模式 特性 一个类只能初始化一个实例 ...

JavaScript对象

JavaScript 标准对基于对象的定义 语言和宿主的基础设施由对象来提供,并且 JavaScript 程序即是一系列互相通讯的对象集合。 对象的特征 对象具有唯一标识性:即使完全相同的两个对象,也并非同一个对象。 对象有状态:对象具有状态,同一对象可能处于不同状态之下。 对象具有行为:即对象的状态,可能因为它的行为产生变迁。 为了提高抽象能力,JavaScript 的属性被设计成比别...

flex布局

flex 布局 概念 main axis————主轴 main size————主尺寸 main start————主轴起点 main end————主轴终点 cross axis————侧抽 cross size————侧抽尺寸 cross start————侧抽起点 cross end————侧抽终点 flex item ————flex里面的一个项,所有flex里的子...

造轮子思路二

VUE轮子 tabs组件 tabs组件核心在于组件之间的通讯,我使用的是eventBus来做组件通讯 bus定义到全局在eventBus中,bus本身就是vue对象本身 然后在组件中,可以使用 $emit, $on, $off 分别来分发、监听、取消监听事件 popover组件 popover组件常见的写法是气泡框用vshow来隐藏在按钮附近,我参考了其他热门的组件库使用了vif来...

svg

注意事项 SVG的元素和属性必须按标准格式书写,因为XML是区分大小写的,属性值必须用引号引起来,就算是数值也必须这样做。 属性 viewBox 对内部局部放大缩小 x 横轴,y 纵轴 width 宽度 height 高度 fill 内部填充色 strokewidth='5' 边框宽度 标签 rect 矩形 rx ,ry 圆角属性

关于前端接口管理的一些思考

前言 在前端项目中,ajax请求太多,能不能都用一个文件夹去统一管理呢,然后吧接口当成函数一样调用呢,这样做的好处有 一个地方统一管理所有接口 避免多次重复写一样的接口 可配置请求方式,减少代码量 实现的思路 首先约定后端返回的数据模板格式 然后按每种不同的请求格式去封装不同的函数 将接口管理写在一个数组里面,遍历所有数组生成对应的函数并且挂在在vue.prototype的方法...

JavaScript的执行

JavaScript 的执行 首先一个 js 脚本本身对于浏览器而言就是一个宏任务,也是第一个宏任务,而处于其中的代码可能有 3 种:非异步代码、产生微任务的异步代码(promise 等)、产生宏任务的异步代码settimeout、setinterval 等。 我们知道宏任务处于一个队列中,应当先执行完一个宏任务才会执行下一个宏任务,所以在 js 脚本中,会先执行非异步代码,再执行微任务代码,最...

Angular6

概念 组件:是angular应用的基本构建快,你可以把组件理解为一段带有业务逻辑和数据的HTML 模块:模块用来将应用中不同的部分组织成一个Angular框架可以理解的单元 路由: 命令 ng new appName ————生存新项目 注意:生成项目同时会下载npm依赖,如果失败需要换代理《nrm》 ng serve open ————启动服务器并监听文件变化,...

编程概念

为何使用面向对象 答:因为程序执行无非是:“顺序,判断,循环”,而面向对象是基于这三个作数据结构化 编程应该 简单&抽象 返回对象的函数叫构造函数 关于「如何取舍一些技术」: 无论使用的是什么技术,往上走必然会走到一个更高的抽象层面,这个时候所有「变化的表象」就 merge 成了「更不变的基础」: Domainspecific 领域特定 的有一大堆 spec 规范 TC39 的 E...

我喜欢的parcel

前端的打包工具 还记得以前用webpack3的时候,各种莫名其妙的插件,还特别难配置,不知道是不是我的学习姿势不对,后来我转用了parcel,那时候到现在我的项目打包都是用parcel,包括我的个人项目pencilvue也是用parcel打包的,当然会有些许缺点,后面再说。 parcel parcel的卖点就是零配置,相信被webpack折腾过的同学都会体会到parcek的好。当初只看了parc...