我不知道它的来源,安装了4.0版的CO和0.11.14版本的Node。在3.1上工作的非常简单的代码(只是注意到以前版本的co是不同的)
"use strict"
const co = require('co')
const main = function*() {
console.log('THIS IS LOGGED')
}
co(main)()
给我这个输出:
/home/tbrown/.nvm/current/bin/node --debug-brk=23342 --nolazy
--harmony routes-to-apache-reverse-proxy.js Debugger listening on port 23342 THIS IS LOGGED /home/Documents/projects/server/routes/routes-to-apache-reverse-proxy.js:8 co(main)()
^ TypeError: object is not a function
at Object.<anonymous> (/home/Documents/projects/server/routes/routes-to-apache-reverse-proxy.js:8:9)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.runMain [as _onTimeout] (module.js:501:10)
at Timer.listOnTimeout (timers.js:133:15)
Process finished
with exit code 1
它引用的行是
co(main)()
答案 0 :(得分:2)
确定CO从3-> 4改变 - 这看起来是等效的
"use strict"
const co = require('co')
const main = function*() {
console.log('THIS IS LOGGED')
}
co(main).
catch(function(e){
console.error(e)
})