我是CoffeeScript的新手。我正在尝试使用Express.js框架创建Node.js应用程序。在我的快速应用程序配置中,我有这行编译错误的代码:
app.use express.static path + '/public'
它正在编译:
app.use(express["static"](path + '/public'));
当我需要这样的时候:
app.use(express.static(path + '/public'));
有谁知道为什么会这样,以及如何解决这个问题?它导致我的公用文件夹无法访问。
我正在使用CoffeeScript 1.3.1
答案 0 :(得分:6)
static
可能是未来版本的javascript / ecmascript中的保留字。就像现在top
一样。因此,将其用作变量名称可能会在某处导致错误。
这就是为什么咖啡试图避免它。
但它们是等价的,所以尽量在其他地方找到错误。
答案 1 :(得分:2)
他们是等同的,不要担心。
答案 2 :(得分:0)
Express框架使用'serve-static'模块导出静态方法:
exports.static = require('serve-static');
您可以尝试解决这个问题:
app.use '/static', require('serve-static')(__dirname + '/static')
或覆盖模块中的静态方法。