gpt4 book ai didi

node.js - 如何使用 Node.js 正确设置 Coffeescript

转载 作者:搜寻专家 更新时间:2023-10-31 22:36:47 24 4
gpt4 key购买 nike

我正在尝试通过以下方式使用 Coffeescript 定义一些 Node 路由:

我的 app.js 文件:

/**
* Module dependencies.
*/

require('coffee-script');

var express = require('express');


var http = require('http');

var path = require('path');

var app = express();

// all environments

app.set('port', process.env.PORT || 3000);

app.set('views', path.join(__dirname, 'views'));

app.set('view engine', 'jade');

app.use(express.favicon());

app.use(express.logger('dev'));

app.use(express.json());

app.use(express.urlencoded());

app.use(express.methodOverride());

app.use(app.router);

app.use(express.static(path.join(__dirname, 'public')));

// development only

if ('development' == app.get('env')) {
app.use(express.errorHandler());
}

require('./routes')(app);

http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});

我的 routes.coffee 文件(与应用程序位于同一层):

routes = (app) ->


app.get '/login', (req,res) ->

res.render "views/login",

title: 'Login'

stylesheet: 'login'

module.exports = routes

我的问题是:

1 当我尝试运行 Node 应用时 - 我得到:

module.js:340
throw err;
^
Error: Cannot find module './routes'

如果我明确指定.coffee 后缀:require('./routes.coffee')(app); - 我得到:

routes = (app) ->
^
SyntaxError: Unexpected token >

请问正确的做法是什么?

最佳答案

在 CoffeeScript 1.7 中,行 require('coffee-script') 不再允许您要求 CoffeeScript 文件。相反,您需要:

require('coffee-script/register')

require('coffee-script').register()

参见 the documentation .

关于node.js - 如何使用 Node.js 正确设置 Coffeescript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21583899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com