0

本机javascript:

var Person;
Person = Backbone.Model.extend({});

如果我在 google chrome 控制台中编写,此代码工作正常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);

如果我在谷歌浏览器控制台中写:

var person = new Person;
ReferenceError: Person is not defined

如何使用生成的 javascript 而不是本机 javascript 从控制台创建实例?

4

1 回答 1

3

CoffeeScript 默认将所有代码包装在一个函数中,以避免污染全局命名空间。-b您可以使用/标志编译代码--bare以避免此包装器,或使用window.Person = Backbone.Model.extend({})手动使其成为全局,这是在 CoffeeScript 中执行您想要的操作的常用方法。

于 2013-02-04T16:10:52.290 回答