Ссылочный класс в браузере дружественный и node.js дружественный способ - PullRequest
0 голосов
/ 20 февраля 2012

У меня есть следующий код в верхней части моего CoffeeScript программа для ссылки на класс BinaryNode из BinaryTree класс.

Так как я хочу иметь возможность использовать класс 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)

Каким-то образом это, если / иначе меня беспокоит, если мне понадобится добавить его на много разных классов, которые составляют программа.

Существуют ли другие лучшие способы выполнить эту проверку?

1 Ответ

1 голос
/ 20 февраля 2012

(из моего комментария выше)

Ветвление можно сократить до:

{BinaryNode} = require?("/.binary_node") or window

(при условии, что у вас нет глобальной require функции где-то в коде вашего браузера, конечно)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...