Jasin Yip

标签 javascript 下的文章

使用 CoffeeScript 来编写 gulpfile

习惯使用 CoffeeScript 之后,都不怎么想写 Javascript 了,于是在新的项目当中我就试着使用去写 gulpfile,在网上查阅了一下,发现还是挺简单的。

安装 coffee-script

npm install coffee-script --save-dev

编写 gulpfile.js

在 gulpfile.js 中写这两行:

require('coffee-script/register');
require('./gulpfile.coffee');

现在,你就可以新建一个 gulpfile.coffee 来用 CoffeeScript 来编写 gulpfile 了!

关于 SublimeText - Javascript 中那莫名奇妙的"#{}"

Sublime Text 是我最喜欢使用的编辑器,但最近在写 Javascript 的时候却发现,当我输入双引号 "" 后,再输入 # ,居然会出现 "#{}",这让我百思不得其解,不知道是哪个插件出的问题。

于是我开始一个一个插件地卸载——测试——重新安装,终于发现了原来是Better CoffeeScript 这个插件惹的祸。

问题定位到了一个插件上,这就容易解决了。

打开 Sublime 的 Package 文件夹(SublimeText2 -> Preference -> Browser Packages...),然后在 Better CoffeeScript 文件夹中找到了问题的所在:

原来,在 Default.sublime-keymap 里它将 # 绑定了一个自动填充:

[
    { "keys": ["#"], "command": "insert_snippet", "args": {"contents": "#{${1:$SELECTION}}$0"}, "context":
        [
            { "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
            {
                "operand": "(string.quoted.double | string.interpolated) - string source",
                "operator": "equal",
                "match_all": true,
                "key": "selector"
            }
        ]
    }
]

所以,我们把这里面的东西都删掉,只留下一个 [] ,然后保存,问题就解决了。

简单的监听器和事件发送 —— Node.js 学习笔记(4)

引言

Node.js 所有的异步 I/O 操作在完成时都会发送 一个事件 到事件队列。而事件需要则监听器进行监听,当监听器监听到自己监听的事件时,便会进行相应的动作。

在开发者看来,事件由 EventEmiiter 对象提供。之前提到的 fs.readFile 和 http.createServer 的回调函数都是通过 EventEmitter 来实现的。

下面我们用一个简单的例子,来使用 EventEmiiter 创建监听器,以及发送事件。

- 阅读剩余部分 -