追时间

Yak shaving during web development, thoughts...from Jijie Chen

高效快速地加载 AngularJS 视图

当 AngularJS 应用程序开始变大时,很多问题就开始显现出来了,比如多层级视图的加载问题,如果在子视图显示之前没有预加载,则可能在需要展示时,发生视觉闪烁的情况。这种问题在网络缓慢,或者服务器使用较慢的 https 连接时更容易出现。

本文将讨论更高效加载 AngularJS 视图的系统方法。 [更多...]

以同步的方式运行 Gulp 任务和任务中的步骤

与以传统的方式进行配置的 Grunt 相比,Gulp 则使用“代码”的方式来描述任务。而它们另一个巨大的不同,则体现在运行方式上:Grunt 的运行方式很直观:解析依赖,使用配置逐步运行已定义的任务;而 Gulp 则默认将所有任务和步骤异步化运行。
显而易见,Gulp 在效率上是有明显的提升的。但也带来了一些概念上的转变,以及,如果我们熟悉了 Grunt 或者其他传统的编译工具,比如 Ant 或 MSBuild,会在有同步运行任务需求时遭遇难题。 [更多...]

理解 JavaScript 中的 generator (EcmaScript 6)

 Generator 函数是一种特殊的函数,只需要在其中使用 yield,就可以暂停其执行过程。调用 generator 函数时,会得到一个 generator 对象的返回值。要想运行在 yield 位置之前的函数体,需要调用 generator 对象的 next 方法。定义 Generator 函数的方法就是在函数名之前加一个星号(*[更多...]

为 Visual Studio 安装并配置 TypeScript 环境

TypeScript TypeScript 是微软推出的一种新的中间语言,它旨在为应用级 JavaScript 开发提供强大的支持。由于原生的 JavaScript 原本是一种脚本语言,所以当时为了能够在应用时更灵活自由,才制定了了相对随意的语法规则。近年来,随着 Node.js 的流行和 Windows 8 上内置的 JavaScript 开发平台,JavaScript 走向多平台和更大规模的开发的势头越来越猛。在为此高兴的同时,我们也越来越发现,在应用规模,反而正是由于原生 JavaScript 的一些脚本特性,让开发工作不得不面临一些尴尬,比如过于随意的类型、面向对象编程的相对别扭和代... [更多...]

使用 jQuery.render 呈现服务器数据[内置 Ajax 支持]

 通过上一篇文章,我们了解到,jQuery.render 支持使用与传统 jQuery 命令调用方式相同的简单而直观地调用来完成对 Array 或 Object 等本地数据类型的呈现,此外,我还简要介绍了模板的话题。
紧接上一篇文章的思路,让我们随本文一起探讨 jQuery.render 是如何使用同样简单直观的方式来解放动态绑定来自服务器的远程数据的。
[更多...]

使用 jQuery.render 呈现本地数据(local data source)

 在上一篇博客中,我介绍了 jQuery.render 是一个用以帮助搭建视图的引擎。jQuery.render 是一个用于前端页面的 jQuery 插件,它可以根据指定的模板和数据来呈现出 HTML 视图。

在本篇中,请随我一起了解 jQuery.render 是如何自动处理数据,以及您可以如何更自主地定制 jQuery.render 来满足您的个性化需求。 [更多...]

用 jQuery.render 呈现 Web 视图

在构建 Web 应用的过程中,一个常见的场景是,我们搜集数据之后,再使用 Javascript 来将这些数据按设想的方式呈现到页面上。我正在为您介绍的 jQuery.render 就是在这时候用来帮助你搭建视图的得力引擎。 jQuery.render 是一个用于前端页面的 jQuery 插件,它可以根据指定的模板和数据来呈现出 HTML 视图。jQuery.render 可以自动处理包括集合、JSON 对象在内的各种数据,内建 ajax 支持,具有完善的事件体系,供您自由使用与定制。 [更多...]

即使是js,也请关注你的业务

 一个问题的解决总伴随着很多方向的小问题,我们要专注,就要将大问题分开成若干个小问题,再将注意力分别专注在这些小问题上,并分别解决之,最终将所有问题解决。这个中间需要注意的一个“玄机”是,这些小问题与“全局协调者”之间的关系。小问题只需要按全局协调者的要求返回一定的数据即可,其中的具体逻辑是可以随意修改的。

其实分治策略是早就提出的一种重要思想了,却在现代编程实践中渐渐地被人们所抛弃、遗忘了。这导致了很多乱成一团的代码,难以维护的代码。这很可惜。 [更多...]