ERB模板内的另一个文件形式定义调用CoffeeScript的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ERB模板内的另一个文件形式定义调用CoffeeScript的方法相关的知识,希望对你有一定的参考价值。

我不应该能够从ERB模板中调用此方法的CoffeeScript?它不工作,但现在看来似乎应该。

setup.就是.coffee

class SetupStepTwo

  include @

  constructor: ->
    @resetView()

  resetView : ->
    console.log('cool');

window.ns1.SetupStepTwo = SetupStepTwo

$ ->
  new SetupStepTwo()

update.js.erb

window.ns1.SetupStepTwo.resetView();
答案

SetupStepTwo类有一个名为resetView一个实例方法,但你要称呼其为一个类的方法(或者至少是通过如(Java的一个类的方法|咖啡)脚本),当你这样说:

window.ns1.SetupStepTwo.resetView();

如果你真的想用resetView作为一个类的方法,然后你的类应该看起来更像是这样的:

class SetupStepTwo
  constructor: ->
    @constructor.resetView()

  @resetView : ->
    console.log('cool')

@@resetView使一个类的方法和@constructor是,更多或更少的,例如在红宝石self.class

但是:四联zxsw POI

如果你想http://jsfiddle.net/ambiguous/eDdmd/是一个实例方法,那么你就需要更换此:

resetView

window.ns1.SetupStepTwo.resetView(); 实例的resetView通话。

以上是关于ERB模板内的另一个文件形式定义调用CoffeeScript的方法的主要内容,如果未能解决你的问题,请参考以下文章

在 Rails 3 中处理 JS/ERB 模板中的 JSON

如何从组件文件夹内的另一个文件夹中调用一个类?

渲染 .json.erb 模板时不调用 jQuery .done

从 VPC 内的另一个 cloudformation 模板引用 SecurityGroup

如何从Python中的另一个函数调用函数内的函数? [重复]

技术分享手把手教你如何完成Ruby ERB模板注入