最近的文章列表

TodoMVC:帮助你选择一个MV*框架

开发者现在有很多的MV*框架选择来组织开发web应用程序。Backbone、 Ember、AngularJS、Spine… 新的稳定解决方案列表持续增长,但你如何决定在海量的框架中选择哪个使用?

为了帮助解决问题,于是诞生了TodoMVC项目,它使用不同的最流行的JavaScript MV*框架实现了一个相同的Todo应用。

2016/3/2 Comments:
AngularJS VS React哪家强?

Kumar Sanket为Toptal公司的全栈Web开发者/工程师,他在一篇文章《Why I Ditched Angular for React》中对Angular和React进行了对比,他表示Angular在快速开发大型Web项目上很受推崇,但其也存在的种种缺陷,如过于依赖DOM操作,双向数据绑定带来性能问题等。而React作为由Facebook和Instagramin领导的新开源项目,为JavaScript应用开发者提供了新的开发方式,同时具有速度快、跨浏览器兼容、模块化等优点,也是这些优点,让Kumar Sanket选择了React。下面为该文章的译文。


几年前,我的代码因充满了jQuery选择器和回调函数而十分凌乱,后来AngularJS的出现很好地解决了这个问题。

使用AngularJS开发的项目拥有极好的可维护性,AngularJS拥有一系列简单易用的功能,有利于快速开发大型的Web项目。

初识时,AngularJs的双向数据绑定和所有的数据源都放在Model中的设计理念让我惊叹,在实际的开发中,有效地减少了应用程序中的数据冗余。

2016/2/25 Comments:
webpack配置.jsx文件由babel来解析,出现:babel没能识别我 js 文件中的 jsx 语法?

fb 开发网上例子 getting  started用的是 

<script type="text/babel">      
// To get started with this tutorial running your own code, simply remove      
// the script tag loading scripts/example.js and start writing code here.    
</script>  

而一般我们会看到用的是jsx  有什么区别吗

区别就在于 babel 支持将按照ES6写的代码转成ES5格式的代码,以便让其能在现代浏览器上正常运行,用jsx, 只能用ES5的语法。

升级到 babel6 了

安装 babel-preset-react

2016/2/17 Comments:
Webpack+React+Hot控制台报错:Cannot read property ‘NODE_ENV’ of undefined

解决办法如下:

找到webpack.config.js文件:

var webpack = require('webpack');
var path = require('path');

module.exports = {
// entry: './js/entry.js',
entry: [
'webpack-dev-server/client?http://127.0.0.1:3000', // WebpackDevServer host and port
'webpack/hot/only-dev-server',
2016/2/16 Comments:
推荐两款在线Web前端聊天框架:Shout、Converse.js

Shout:一个IRC Web客户端

这是什么?

Shout 是一个 Web IRC 客户端,可托管在你自己的服务器上。

它有什么特性?

  • 支持多用户
  • 关闭浏览器后,连接保持不断
  • 同时可从多设备连接
  • 响应式布局,在智能手机上同样适用
  •  

示例

2015/9/7 Comments:
分享Nodejs Express框架中处理404页面一个方式

在用 Express 的时候,路由是我最困惑的事之一。知道用 app.get('*') 可以处理所有页面,但这样除了自定义的其他路由外,静态文件是被忽略的。最近在写一个小工具的时候,找到了一个解决方案:

代码如下:
var express = require('express'),
    router = require('./routes');
    var app = module.expo
2014/5/29 Comments:
RequireJS和SeaJS区别?AMD 和 CMD 的区别有哪些?CommonJS Modules
模块化开发已经是大势所趋,看到玉伯在介绍seajs和requirejs时,说“RequireJS 遵循的是 AMD(异步模块定义)规范,SeaJS 遵循的是 CMD (通用模块定义)规范”。
AMD 规范在这里:github.com/amdjs/amdjs-
CMD 规范在这里:github.com/seajs/seajs/

AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。
CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。
类似的还有 CommonJS Modules/2.0 规范,是 BravoJS 在推广过程中对模块定义的规范化产出。
还有不少⋯⋯
2014/5/9 Comments:
javascript中关于(function( window, document, undefined ) {})(window, document)写法的好处和作用

在jquery中我们经常看到以下这段代码:

;(function ( $, window, document, undefined ){
//函数体内具体代码
})(jQuery, window,document);

首先说说非常值得提倡的几点:
1、代码最前面的分号,可以防止多个文件压缩合并以为其他文件最后一行语句没加分号,而引起合并后的语法错误

2014/4/25 Comments:
javascript模块化是什么及其优缺点介绍

也许你用过诸如backbone、emberjs、spinejs、batmanjs 等MVC框架。然而CommonJS、AMD、NodeJS、RequireJS、SeaJS、curljs等模块化的JavaScript扑面而来。web前端已经演变成大前端,web前端的发展速度之快。 

1)我们来看看什么是模块化? 
模块化是一种将系统分离成独立功能部分的方法,可将系统分割成独立的功能部分,严格定义模块接口、模块间具有透明性。javascript中的模块在一些C、PHP、java中比较常见: 

2014/4/15 Comments:
Twitter.com在用哪些Javascript框架? Bootstrap Html2Canvas Xdm

测试\UI\安全\性能\通讯

2014/4/5 Comments: