原生javascript:
var Person;
Person = Backbone.Model.extend({});
如果我在谷歌浏览器控制台var person = new Person;
我的main.coffee
Person = Backbone.Model.extend({})
生成的main.js
// Generated by CoffeeScript 1.4.0
(function() {
var Person;
Person = Backbone.Model.extend({});
}).call(this);
如果我使用Google Chrome控制台编写:
var person = new Person;
ReferenceError: Person is not defined
如何使用生成的javascript而不是原生javascript从控制台创建实例?
答案 0 :(得分:3)
CoffeeScript默认包装函数中的所有代码以避免污染全局命名空间。您可以使用-b
/ --bare
标志编译代码以避免使用此包装,或使用window.Person = Backbone.Model.extend({})
手动将其设置为全局,这是在CoffeeScript中执行所需操作的常用方法。