Ответ 1
Ваш код действительно сделает userModel
глобальным, предполагая, что exports
- undefined и this
- window
. Если у вас возникли проблемы, проверьте эти условия.
Если у меня есть класс Coffeescript, определенный в отдельном файле, который я вызываю из моего основного script. Я могу сделать функции внутри файла глобально видимыми, но не классом.
Входящий файл:
root = exports ? this
root.add = (a, b) ->
return a + b
class root.userModel
username: 'Aaaa'
name: 'Bbbb'
Я могу получить доступ к функции из моего основного кода. Как я могу создать класс?
Ваш код действительно сделает userModel
глобальным, предполагая, что exports
- undefined и this
- window
. Если у вас возникли проблемы, проверьте эти условия.
Форма class ...
- это выражение, которое возвращает значение. Таким образом, вы захотите присвоить результат этого выражения class
свойству объекта экспорта. Например:
root.userModel = class userModel
username: 'Aaaa'
name: 'Bbbb'
Update:
К сожалению, не верно, должно работать нормально либо как class root.userModel
, либо как root.userModel = class userModel
.
просто определите свой класс с помощью '@' перед его именем
class @ClassName
blablabla: -> blablalblablabla