2012-07-31 83 views
0

我通过npm安装了sass节点模块,并希望使用它来编译一些不在节点环境中的scss样式表。如何在节点外部使用节点模块?

理想我希望能够使用它像CoffeeScript的编译器

青菜 - 顺somestylesheet.scss

但任何让我靠近那里就行了。

我没有看到任何命令行工具。有没有某种标准的方式来做这种事情与节点?

+0

我没有找到任何命令行包装为我找到的2个不同的节点SASS端口。我想你可以写一个并贡献它。 LESS确实带有一个命令行界面:https://github.com/cloudhead/less.js,就像手写笔一样https://github.com/LearnBoost/stylus – 2012-07-31 18:53:14

+0

@PeterLyons是这样吗? https://github.com/cloudhead/less.js/blob/master/bin/lessc – 2012-07-31 18:54:15

+1

是的,就是这样。一般来说,您可以编写可从命令行运行的node.js的javascript程序。就像perl,python和ruby那样工作,只是不是每个npm模块都带有一个命令行工具。 .js文件顶部的'#!/ usr/bin/env节点'起作用。 – 2012-07-31 19:15:48

回答

1

我敢肯定你已经一起黑客一点青菜编译脚本,但这里是一些背景资料:

要使用NPM在全球范围内的节点安装模块,NPM读取package.json"bin"哈希,查找映射到其相应脚本的全局名称。

下面是我从快递了一个例子:

{ 
    "name" : "express" 
    ... 
    "bin": { "express": "./bin/express" }, 
    ... 
} 

这告诉NPM让快递脚本全球可用的,当你安装包npm install -g <package-name>

我检查https://github.com/andrew/node-sass/blob/master/package.json,它有在它的package.json中没有"bin"散列,所以你必须自己写一个散列。

正如@彼得·莱昂斯说,你

#!/usr/bin/env node 

your code 

取决于您所使用的操作系统上启动一个可执行脚本节点,你可能还需要使脚本可执行与chmod +x yourScript。那么你应该能够从任何控制台执行你的脚本,如果你把它放在全局路径上,或者你把它叫做./yourScript

+0

早在7月份我刚放弃使用红宝石。现在用一台新机器回来,我仍然喜欢使用节点,但是同一个泡菜。我有更多的节点经验,但不足以知道如何编写我自己的包装,特别是在Windows上 – 2012-11-12 23:08:47