GTD*_*Dev 16 javascript node.js coffeescript requirejs node-modules
我正在尝试设置nodejs项目以使用requirejs.我用我的程序调用node r.js ./config/main.js
,我的main.js如下所示:
var cs = require("coffee-script");
var requirejs = require("requirejs");
requirejs.config({
nodeRequire: require,
baseUrl: ".",
paths: {
cs: "cs",
CoffeeScript: "CoffeeScript",
csBuild: "csBuild",
express: "express",
nohm: "nohm",
redback: "redback",
_: "underscore",
"connect-redis": "connect-redis",
freebase: "freebase"
}
});
console.log("hetet");
requirejs(["cs!./config/app"], function(app){
console.log("closing")
});
Run Code Online (Sandbox Code Playgroud)
在app.coffee里面:
define((require) ->
express = require("express")
RedisStore = require("connect-redis")(express)
app = express.createServer()
config = require('cs!./config')
require('cs!./setup')(app, express, RedisStore)
require('cs!./routes')(app)
require('cs!../src/server')
app.listen(config.server.port)
)
Run Code Online (Sandbox Code Playgroud)
我似乎在main.js中失败并出现错误:
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Calling node's require("config") failed with error: Error: Calling node's require("config") failed with error: Error: Cannot find module 'config'
Run Code Online (Sandbox Code Playgroud)
而且我注意到的是当我注释掉这一行var requirejs = require("requirejs");
(在main.js中)时,我在行(在app.coffee中)进一步失败并出现RedisStore = require("connect-redis")(express)
错误:
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: undefined is not a function
at ./config/app.coffee:10:41
Run Code Online (Sandbox Code Playgroud)
我在节点中配置requirejs时遇到了很多麻烦,任何帮助都会受到赞赏.
谢谢
jrb*_*rke -4
最好不要将 requirejs 配置为在 node_modules 中查找,因为该区域中的模块是针对 Node 格式化的模块。requirejs 节点页面中有更多信息。