cp=sh.ShellExecute ("notepad.exe")
前提是以Windows Scripts Host 方式运行(相当于保存成js文件,直接在资源管理器中直接双击js文件)。
1. sudo /path/scss.js # 载入已写好的配置, 侦听多个项目推荐这种方法, 把多个项目的配置信息写到 scssConfig.js中, 不需要额外的参数.
2. sudo /path/scss.js -build # 读取所有的.scss并编译成.css文件
3. sudo /path/scss.js -clear # 清除错误日志(如果配置了 scssConfig.js里logDir的路径)
4. sudo /path/scss.js /path/project1/ /path/lib/ # 临时监听project1目录, lib为.scss里@import的path(无@import,可以省略)
首先,需要安装nodejs,这个可以去官网下载,目前我本地安装的v0.12版本。安装完成后可以通过命令行测试安装是否成功,输入:node -v,应该会显示当前安装node版本号。
本文中用到的模块,都是nodejs核心模块,不需要从外部下载,如果有需要,可以使用以下命令安装:npm install xxx。
开始
下一步,新建js文件,可以命名为server.js,代码如下:
var http = require('http')
var url = require('url')
var path = require('path')
var fs = require('fs')
var dir, arg = process.argv[2] || ''// 命令行第三个参数,用来接收目录,可为空,相对当前server.js文件的目录名称
// 比如使用命令 node server debug,意思就是debug文件夹与server.js文件同级
// 且你想以debug文件夹启动web服务
http.createServer(function (req, res) {
var pathname = __dirname + url.parse(req.url).pathname
dir = dir ? dir : pathname// 记住dir(目录)
pathname = dir ? pathname.replace(dir, dir + arg + '/') : pathname// 替换文件静态路径
if (path.extname(pathname) == "") {
pathname += "/"
}
if (pathname.charAt(pathname.length - 1) == "/") {
pathname += "index.html"// 入口文件,此处默认index.html
}
fs.exists(pathname, function (exists) {
if (exists) {
switch (path.extname(pathname)) {
case ".html":
res.writeHead(200, {"Content-Type": "text/html"})
break
case ".js":
res.writeHead(200, {"Content-Type": "text/javascript"})
break
case ".css":
res.writeHead(200, {"Content-Type": "text/css"})
break
case ".gif":
res.writeHead(200, {"Content-Type": "image/gif"})
break
case ".jpg":
res.writeHead(200, {"Content-Type": "image/jpeg"})
break
case ".png":
res.writeHead(200, {"Content-Type": "image/png"})
break
default:
res.writeHead(200, {"Content-Type": "application/octet-stream"})
}
// res可以自己添加信息来简单交互 比如可以修改点header信息 或者修改返回的资源数据
fs.readFile(pathname, function (err, data) {
res.end(data)
})
}
else {
res.writeHead(404, {"Content-Type": "text/html"})
res.end("<h1>404 Not Found</h1>")
}
})
}).listen(8085, "127.0.0.5")// 服务器端口
console.log("server running at http://127.0.0.5:8085/")
启动
当node安装完成及上述server.js文件也新建好之后。将其与你要访问的文件夹放在一起,可以放同层或者直接下层。比如,如果你要访问d:\test\debug文件夹。
你可以先将当前文件放入同层或者直接下,然后输入如下命令启动web服务:
先打开`cmd`,进入server文件所在目录,比如是`test`目录;
然后输入:`node server debug`(同层), 或者`node server`(子层),
此时会提示`server running at http://127.0.0.5:8085/`, 表示启动服务成功;
最后打开浏览器,进入:`127.0.0.5:8085`,即可访问此资源。