我在CoffeeScript的顶部有以下代码 从BinaryTree引用BinaryNode类的程序 类。
因为我希望能够使用BinaryTree类 一个node.js程序或从浏览器我有以下内容 if / else语句引用BinaryNode。
文件:BinaryTree.coffee
isNodeJs = exports?
if isNodeJs
{BinaryNode} = require('./binary_node')
else
BinaryNode = window.BinaryNode
class BinaryTree
(code for BinaryTree goes here)
如果我需要的话,不知何故这个if / else会特别烦我 将它添加到组成的许多不同的类上 程序
还有其他更好的方法来执行此检查吗?
答案 0 :(得分:1)
(来自我上面的评论)
分支可以缩短为:
{BinaryNode} = require?("/.binary_node") or window
(假设您的浏览器代码中某处没有全局require
功能)