0

ここで非常に基本的なものが欠けていると思います。コーヒースクリプトの関数から値を取得したいだけです。その値に対してconsole.logを実行しています..

class App.Views.PlotModal extends Backbone.ModalView
  template: JST['plots/plot_modal'],

  render: ->
    console.log(@getSize.w);
    $(@el).html(@template(plot: @model));
    this.showModal();

  getSize: ->
    cell_div = document.getElementById("bgr");
    w : cell_div.offsetWidth * 3;
    h : cell_div.offsetHeight * 2;

firebug でコンソールにアクセスすると、未定義のままになります。@getSize だけをログに記録すると、関数が返されます。ここで変数 w と h を返すにはどうすればよいですか?

また、バックボーン ビューでこの種の操作 (iframe を動的にサイズ変更したい) を行うことは良い考えですか?

4

1 に答える 1

0

CoffeeScript では、これによりメソッドが単純な関数としてf変数に残されます。x

x = @f

関数を呼び出したい場合は、引数を指定する必要があります。

x = @f 'pancakes'

またはかっこを追加します。

x = @f()

だからあなたはこれが欲しい:

console.log(@getSize().w)

バックボーンでこの種のことを行う限り、確かに、なぜですか? バックボーンは、ポリシーをあなたに任せる傾向があります。

于 2012-08-30T23:18:14.023 に答える