私はEmber.Viewをサブクラス化(拡張)してMy.Widgetを作成しています。私は各My.Widgetサブクラスに、XMLドキュメントからデシリアライズに使用できる「XMLTag」という「クラス属性」を持たせたいと思います。emberjsで「クラス属性」を定義するにはどうすればよいですか?
My.Widget = Ember.View.extend({ /*...*/ });
My.MySubWidget = My.Widget.extend({ /*...*/ });
My.MySubWidget.XMLTag = 'MySubWidget';
これは正しいですか?または、クラス属性を指定するために "extend()"で使用できるトリックがありますか?
'classNames'を定義するときに、' .w() 'を最後に追加する必要はありません。スペースで区切られた文字列も受け入れます。 –
'console.log(this.get( 'classNames'))'を実行すると 'classNames'は分割されていないので、出力は' ["ember-view"、 "my-widget" 、 "my-sub-widget XMLTag"、 "class1 class2"] 'のようになります。それは最後にDOM表現の 'class'属性が単なる文字列なので重要ではありません。しかし、 'w()'を省略するか、配列として 'classNameBindings'で定義しないと動作しません。http://jsfiddle.net/pangratz666/mGFUh/を参照してください。 – pangratz
私は、OPはクラス対インスタンスのように "クラス"を意味すると思います。つまり、クラス変数が必要です。 –