0

我怎样才能在咖啡脚本中实现这样的东西?当我运行节点 a.js 时,A 和 B 都是类型函数

一个.js

exports = module.exports = A;
var B = require('./b');
function A() {
  console.log('I\'m A');
}
console.log('B=', typeof B);

b.js

exports = module.exports = B;
var A = require('./a');
function B() {
  console.log('I\'m B');
}
console.log('A=', typeof A);

我在 Coffee-Script 中尝试了几种方法,但没有一种方法可以像上面的 javascript 那样做。

4

1 回答 1

1

让模块相互依赖听起来不是一个好主意,但如果它是你需要的,这很有效:

一杯咖啡

A = () ->
  console.log('I\'m A')

module.exports = A

B = require('./b')

console.log('B=', typeof B)

b.咖啡

B = () ->
  console.log('I\'m B')

module.exports = B

A = require('./a')

console.log('A=', typeof A)

请确保您阅读了node.js 文档的模块周期部分(它讨论了模块在返回之前可能无法完成执行)。

于 2013-07-27T21:54:49.133 回答