巧用 TypeScript(五)---- infer

2019-03-15
阅读 5 分钟
19.1k
在这个条件语句 T extends (param: infer P) => any ? P : T 中,infer P 表示待推断的函数参数。

问答方式学 Node.js

2019-01-16
阅读 5 分钟
1.4k
但是它与普通的 Ajax 不一样,服务器不会立马返回信息,它会先 hold 住,等待应该返回信息了,它才会返回信息(比如你的好友发了一条新的状态)。

使用 NestJS 开发 Node.js 应用

2018-12-02
阅读 4 分钟
3.8k
NestJS 最早在 2017.1 月立项,2017.5 发布第一个正式版本,它是一个基于 Express,使用 TypeScript 开发的后端框架。设计之初,主要用来解决开发 Node.js 应用时的架构问题,灵感来源于 Angular。在本文中,我将粗略介绍 NestJS 中的一些亮点。

巧用 TypeScript(二)

2018-11-04
阅读 6 分钟
2.7k
Decorator 早已不是什么新鲜事物。在 TypeScript 1.5 + 的版本中,我们可以利用内置类型 ClassDecorator、PropertyDecorator、MethodDecorator 与 ParameterDecorator 更快书写 Decorator,如 MethodDecorator :

巧用 TypeScript (一)

2018-10-07
阅读 6 分钟
3.7k
TypeScript 提供函数重载的功能,用来处理因函数参数不同而返回类型不同的使用场景,使用时,只需为同一个函数定义多个类型即可,简单使用如下所示:

深入理解 TypeScript

2018-08-26
阅读 1 分钟
3.7k
正如你所见,TypeScript 发展至今,已经成为大型项目的标配,其提供的静态类型系统,大大增强了代码的可读性以及可维护性;同时,它提供最新和不断发展的 JavaScript 特性,能让我们建立更健壮的组件。

在 Vue 中使用 TypeScript 的一些思考(实践)

2018-07-06
阅读 5 分钟
11k
Vue.extend():使用基础 Vue 构造器,创建一个“子类”。此种写法与 Vue 单文件组件标准形式最为接近,唯一不同仅是组件选项需要被包裹在 Vue.extend() 中。

设计模式在 TypeScript 中的应用 - 单例模式

2017-12-24
阅读 2 分钟
6.7k
定义 只有一个实例,并提供全局访问。 实现 思路:用一个变量来标识当前是否已经为某个类创建过对象,如果是,则在下一次获取该类的实例时,直接返回之前创建的对象,否则返回新对象。 饿汉模式 特点:类加载时就初始化。 {代码...} 懒汉模式 特点:需要时才创建对象实例。 {代码...} 简单栗子 {代码...}

设计模式在 TypeScript 中的应用 - 策略模式

2017-12-24
阅读 3 分钟
3k
定义 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。 实现 思路:创建表示各种策略的对象,和一个行为随着策略对象改变而改变的 context 对象。 一个简单的加减乘例子: {代码...} 复杂一点的例子(打怪): {代码...}

设计模式在 TypeScript 中的应用 - 代理模式

2017-12-23
阅读 3 分钟
2.3k
定义 代理模式是为一个对象提供一个代用品,或占位符,以便控制对它的访问。 实现 思路:把客户端真正调用的类和方法隐藏,只暴露代理类给客户端。 简单点的例子: {代码...} 缓存代理比较常见,可以为一些开销比较大的运算结果提供缓存,在下次运算时,如果传递进来的参数跟以前一致,则可以直接返回前面存储的运算结果...

设计模式在 TypeScript 中的应用 - 观察者模式

2017-12-23
阅读 2 分钟
3.1k
定义 当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。 实现 思路: 指定发布者; 给发布者添加一个缓存列表,用于存放回调函数以便通知订阅者; 最后发布消息的时候,发布者会遍历这个缓存列表,依次触发里面存放的订阅者回调函数。 例子: {代码...}

vue-cli 中使用 TypeScript

2017-12-10
阅读 4 分钟
12.7k
学以致用,这篇文章是对在 vue-cli 中使用 TypeScript 的一次小结。 环境 npm {代码...} webpack.base.conf.js {代码...} 创建一个 .d.ts 文件让 TypeScript 识别 .vue 文件,在此项目中,我放到了 src/typings 文件夹下: {代码...} 根目录下添加 tsconfig.json 配置文件,配置参数参考:[链接] ,项目内有一份配置,就...

Web 性能优化 - TCP

2017-12-02
阅读 4 分钟
3.1k
TCP 负责在不可靠的传输信道之上提供可靠的抽象层,向应用层隐藏了大多数网络通信的复杂性能,比如丢包重发、按需发送、拥塞控制及避免、数据完整,等等。采用 TCP 数据流可以确保发送的所有字节能够完整地被接收到,而且客户端的顺序也一样。

Vue 常用的过渡

2017-11-05
阅读 2 分钟
3.7k
前言 不涉及理论知识,请参考 [链接] ; 不使用第三方库,如 Animate.css, Velocity.js ; 贝塞尔曲线(cubic-bezier),[链接] 。 正文 fade(淡入淡出),大概是最常见的: {代码...} vue-hackernews 翻页: {代码...} Element 展开折叠 :源码:[链接] btn : {代码...} 用于面包屑: 列表:列表方式提供了5种方式 [链接...

使用 electron-vue 构建你的桌面应用

2017-10-31
阅读 2 分钟
26.3k
官网里这么说:Electron提供了一个Nodejs的运行时,专注于构建桌面应用,同时使用web页面来作为应用的GUI,你可以将其看作是一个由JavaScript控制的迷你版的Chromium浏览器。

前端安全知识

2017-10-11
阅读 5 分钟
3.5k
xss: 跨站脚本攻击(Cross Site Scripting)是最常见和基本的攻击 WEB 网站方法,攻击者通过注入非法的 html 标签或者 javascript 代码,从而当用户浏览该网页时,控制用户浏览器。

nuxt(vue) + koa + mongo 写blog的一次小结

2017-09-29
阅读 2 分钟
7.8k
两个多月的空余时间里,博客差不多搭完。 感谢surmon.me,此 blog 才会诞生。 感谢七牛云提供资源存储。 感谢腾讯云 提供 SSL 证书。 感谢各种开源。

Vue 2.3、2.4 知识点小结

2017-07-21
阅读 4 分钟
6.1k
新增.passive 修饰符 (demo1) ; .passive 修饰符表示事件永远不会调用 preventDefault() ,主要为解决滚动和触摸事件的卡顿而出现,关于 passive 更多信息请移步 MDN 。

HTTP 协议 - 简单谈谈 TCP / IP (一)

2017-07-16
阅读 2 分钟
3.9k
从输入的 URL 里我们可以从中获取服务器端的 IP 地址与端口号,建立一条 TCP 连接。建立连接之后,在客户端和服务器端之间交换的报文,不会丢失,受损,或者失序。

HTTP协议-从URI开始

2017-07-04
阅读 2 分钟
3.3k
URN (统一资源名),是作为特定内容的唯一名称使用的,与目前资源所在地无关。使用这些与位置无关的 URN,就可以将资源四处搬移。通过 URN,还可以用同一个名字通过多种网络访问协议来访问资源。

谈谈 Object.prototype.toString 。

2017-05-13
阅读 4 分钟
5.7k
原文链接我的blog。 前几日看到一个比较熟悉的面试题,判断一个变量是不是数组?以下几种方法供参考: {代码...} 这篇文章主要是谈谈 Object.prototype.toString 。 ECMAScript 5 在ECMAScript 5中,Object.prototype.toString()被调用时,会进行如下步骤: 如果 this是undefined ,返回 [object Undefined] ; 如果 thi...

写个vue-loading-template组件

2017-05-01
阅读 1 分钟
5.3k
趁着5.1来临之际,告诉你们一个好消息: demo: [链接] 源码(star ? start : start):[链接] 组件支持:自定义type(暂时提供8种,具体请看demo);color;size; Start {代码...} Use in SPA {代码...}

写个vue-emoji组件。

2017-04-26
阅读 1 分钟
7.5k
最近公司需求做个类似于QQ空间的项目(其实开始的时候我是崩溃的),好在历时一个月的时间,也终于进入测试的阶段。完成项目过程中,发现并没有一个好用的emoji插件,于是写了一个简单的component,希望对各位有所帮助(如果能顺手给个start,那再好不过了)。

关于一些Vue的文章。(5)

2017-04-04
阅读 2 分钟
1.8k
前三篇里,我们开始从render, template, el的渲染DOM树的优先级,最终都编译成render函数,而后得到vnode(虚拟DOM),经过diff算法后,得到真实DOM。

关于一些Vue的文章。(4)

2017-04-03
阅读 10 分钟
2.2k
接着上一篇,我们继续来讲Vue的Virtual Dom diff 算法中的patchVnode方法,以及核心updateChildren方法。

关于一些Vue的文章。(3)

2017-04-03
阅读 3 分钟
3.6k
在上篇里,我们提到在渲染时,render>template>el,但是最终,我们得到的都是render函数,那么render函数的作用是什么?接下来该干什么?

关于一些Vue的文章。(2)

2017-04-03
阅读 2 分钟
2.2k
原文链接我的blog,欢迎STAR。 这次想要分享的一篇文章是:从一个奇怪的错误出发理解Vue的基本概念。 这篇文章以Vue的两种构建方式做为切入点,深入探讨了Vue的基本概念,编译以及挂载的相关过程。 在这篇文章里学到很多以前忽略的地方: 开始学习vue的时候,由于有一些react基础,对组件的形式有些了解,就直接从vue-cli...

关于一些Vue的文章。(1)

2017-04-03
阅读 1 分钟
3.3k
今天分享的一篇文章是关于vuex的源码解析的,链接vuex源码解析,在现在所做的项目里的每个组件,至少都有一个辅助函数,或者是....mapGetters,或者是...mapActions, 扩展运算符,以及解构也经常用到。这篇文章解决了困扰我许久的一个疑惑,为什么有时候辅助函数里面传的是一个字符串数组,而有的时候传的是一个对象。大...