ParaofHeaven

A statistics blog by Para Yong, Leo Gan, and Schaefer Jian

如何把Angular1.x项目迁移到es6?

In parahome on 2017-11-08 by para

前言

或许有着这些那些的掣肘,但改变还是必须的,否则我们无法知道团队到底需要什么样的框架。

大概今年九月中旬的时候,我们团队开始决心对系统框架基于Angular1.x进行迁移,一方面,前端针对es6的改造已是势在必行的事,项目迁移到React也早已被提上日程,但是直接从Angular1.x过渡到React显得不太实际,毕竟React的体系不是人人都熟悉,重构项目的同时需求也跟着同时开发,es6的语法也需要慢慢过渡着来。幸运的是,我对es6的体系比较熟悉,第一个开始试点的项目也从程程白条开始进行。在此之前,春哥已经将基础框架和组件库更新到es6版本(基础开发库请参考venus-cli),我所做的主要是业务代码方面的迁移.这中间包含了我自己对设计理念的一些实现,这里尝试做一些阐述,请有针对性的吸收。

vscode调试实例介绍

In company on 2017-08-31 by para

前言:

前段时间,我做了一个很重要的决定,离职了并加入了一个新的团队,一切都像从新开始一样。但是一些工作的习惯还是需要我做出一些调整的地方。这其中有个很重要的变化,开发工具需要从webstorm变成vscode了,这倒不是公司强制要求的,但是,我认为遵循一些团队性的规范和约定,能够避免很多浪费时间的useless work(浪费时间而且解决了也不会提高技术性的work,比如java中的环境变量的配置)。

Start a Hugo Blog In BlackBurn Style

Blackburn Blackburn is a clear and responsive theme for Hugo. Overview Based on Yahoo’s Pure CSS (v1.0.0) Fixed sidebar with social links: Twitter GNU social Facebook Google+ Weibo Tumblr Instagram Flickr 500px Pinterest YouTube Vimeo Vine SlideShare LinkedIn Xing Reddit Hacker News GitHub GitLab Bitbucket Stack Overflow Server Fault Steam MobyGames Last.fm Discogs Keybase Client-side syntax highlighting by Highlight.js (v9.12.0) Web analytics by Google Analytics Comments by Disqus Icons by Font Awesome (v4.

Immutable 详解及React中实践

In parahome on 2016-12-08 by para

Shared mutable state is the root of all evil(共享的可变状态是万恶之源) –Pete Hunt

有人说 Immutable 可以给 React 应用带来数十倍的提升,也有人说 Immutable 的引入是近期 JavaScript 中伟大的发明,因为同期 React 太火,它的光芒被掩盖了。这些至少说明 Immutable 是很有价值的,下面我们来一探究竟。

JavaScript 中的对象一般是可变的(Mutable),因为使用了引用赋值,新的对象简单的引用了原始对象,改变新的对象将影响到原始对象。如 foo ={a:1};bar =foo;bar.a=2 ,你会发现此时foo.a也被改成了2。虽然这样做可以节约内存,但当应用复杂后,这就造成了非常大的隐患,Mutable带来的优点变得得不偿失。为了解决这个问题,一般的做法是使用shallowCopy(浅拷贝)或deepCopy(深拷贝)来避免被修改,但这样做造成了CPU和内存的浪费。

Immutable 可以很好地解决这些问题。

React Design Pattern Discuss

In parahome on 2016-11-11 by para

transformation

The core premise for React is that UIs are simply a projection of data into a different form of data. The same input gives the same output. A simple pure function.

State数据格式设计中的思考

In parahome on 2016-11-02 by para

前言

Redux中,State是整个应用的数据,本质上是一个普通对象。

State决定了整个应用的组件如何渲染,渲染的结果是什么。可以说,State是应用的灵魂,组件是应用的肉体。

所以,在项目开发初期,设计一份健壮灵活的State尤其重要,对后续的开发有很大的帮助。(请注意,并不强制要求所有的数据都保存到State中,有些属于组件的数据是完全可以留给组件自身去维护的。)

React文档中没提到的事

In parahome on 2016-10-20 by para

前言

对很多 react 新手来说,网上能找到的资源大都是些简单的 tutorial ,React文档也是非常值得一读的,英文版的有着非常详细的介绍。它们能教会你如何使用 react ,但并不会告诉你怎么在实际项目中优雅的组织和编写 react 代码。用谷歌搜中文“ React 最佳实践”发现前两页几乎全都是同一篇国外文章的译文…所以我总结了下自己过去那个项目使用 React 踩过的一些坑,也整理了一些别人的观点,希望对部分 react 使用者有帮助。

笛风新平台前端JavaScript编码规范起草

编码规范

在团队协作过程中,编码规范的作用想必不用多说,本文主要介绍如何选择及相应的辅助工具,最大程度上保证代码质量。

选择标准
  • 认可度高,该规范现在已经或者即将成为国际 JavaScript 标准了
  • 支持项目的技术选型
  • 完备的插件支持

JavaScript语法解析与抽象语法树

In parahome on 2016-05-20 by para

抽象语法树(Abstract Syntax Tree)也称为AST语法树,指的是源代码语法所对应的树状结构。也就是说,对于一种具体编程语言下的源代码,通过构建语法树的形式将源代码中的语句映射到树中的每一个节点上。

什么是语法树

可以通过一个简单的例子来看语法树具体长什么样子。有如下代码:

  var AST = "is Tree"; 

JavaScript中的new关键字

In parahome on 2015-08-06 by para

Javascript中,实例化一个对象,会用到new关键字。

经常有人会问我,对于一个函数,什么时候该使用new关键字。

在回答这个问题之前,需要先了解清楚new的本质,在调用new Function的时候,new做了什么操作。