愿你坚持不懈,努力进步,进阶成自己理想的人

—— 2017.09, 写给3年后的自己

JavaScript设计模式——观察者模式

观察者模式是一种常用的设计模式,它的好处是可以解耦两个对象之间的信息传递。 场景 某购物网站展示用户名、头像、获取购物车数据等等操作,需要在登录完成后进行。假设现在展示用户名、头像、获取购物车数据等操作的方法名称如下: showUsername() show...

Webpack使用总结

一、核心概念 webpack 是一个现代 JavaScript 应用程序的模块打包器。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图,其中包含应用程序需要的每个模块,然后将所有这些模块打包成少量的 bundle(通常只有一个),由浏览器加载。 其核心概念有4个:入口(entry)、出口(output)、loader、插件 1、入口(entry)

对MV*的理解

大型软件的开发需要有清晰合理的架构,否则将难以开发和维护。而MV*则是为了解决问题而出现的软件架构 目前的MV*主要有MVC、MVP、MVVM,而三者的主要差别,在于如何粘合Model和View层。 一、MVC

opn模块使用总结

opn是Node下一个更好的启动模块。它可以打开网站、文件、可执行文件,而且opn是跨平台的 为什么使用opn opn是一个积极维护中的模块 支持app参数 由于使用

Node命令行程序开发总结

Node可以很方便地进行命令行程序的开发,我们所接触到的sass、less、npm等程序,都是命令行程序。 一、可执行脚本 自从有了Node后,我们就可以使用JavaScript来编写可执行脚本了。最简单的可执行脚本hello如下: #!/usr/bin/env node...

Vue.js学习总结笔记(二)组件

一、注册组件 1、全局注册 注册组件的方式为: Vue.component(tagName, options); 注意:组件的注册,要在实例化实例之前完成。即: Vue.component('my-com...

多行文本溢出解决方案

一、问题场景 在业务开发中,经常会遇到需要控制超长文本的问题。而处理这个问题一般的做法是对其进行截断:传统情况下,我们可以限制字符最多可以有几个字符,然后超出这个阈值后substr并加上省略号。但是这种方案是有局限性的。如果我们的文本显示区域是随着窗口大小变化的,那么固定字符长度的截断方案仍然不美观,所以我们通常使用CSS来进行控制。如:

git config使用总结

git config是用来对git进行配置的命令 一、查找 git config配置项的查找顺序依次为“Current Project -> User -> System”,其中: 1、/etc/gitconfig文件,这个文...

path对象使用总结

path对象是NodeJS提供的一个十分方便于路径处理的模块 下面了解一下这个模块的用法,如下: 一、引入path对象 const path = require('path'); ...

《ECMAScript6入门》学习笔记之Class

ES6中开始引入了class这一关键字,使得能够以更加清晰的方法来定义类和使用类。实际上,class本质上是一个语法糖 一、示例 定义一个类形如: class Point { constructor...

git stash命令的使用

在工作中,我们经常遇到以下的场景: 在B分支上正在进行开发,但是此时QA突然告诉你A分支出了个问题。这时候,我们需要切到A分支上来修复这个问题,但是手头的代码还是在开发中的,我们并不想直接commit一份当前的代码,这种情况下怎么办呢?那么git stash就派上用场了 git...

ES6学习记录——let和const

一、传统的var 在ES6之前,我们声明一个变量,都是使用var关键字进行声明的,而之前,JavaScript中也只有全局作用域和函数作用域(with和catch块也会创建作用域)。使用var会有一些奇奇怪怪的问题,如: 1)可以重复声明: