goog.ui.Componentのサブクラスを作成しました。
/**
* Renders the bottom pane.
* @param {!myapp.Entity} entity An entity.
* @param {goog.dom.DomHelper=} opt_domHelper Optional DOM helper.
* @constructor
* @extends {goog.ui.Component}
*/
myapp.BottomPane = function(entity, opt_domHelper) {
goog.base(this, opt_domHelper);
this.setModel(entity);
}
goog.inherits(myapp.BottomPane, goog.ui.Component);
ただし、JavaScriptを実行すると、Chromeコンソールはそのことを認識しUncaught TypeError: Object #<Object> has no method 'setModel'
ます。私はブレークポイントを設定し、実際、私のmyapp.BottomPane
インスタンスsetModel
にはプロトタイプチェーンのメソッドがないことに気づきました。ドキュメントにはすべてのコンポーネントにこのメソッドがあると記載されているため、これは奇妙です:http: //closure-library.googlecode.com/svn/docs/class_goog_ui_Component.html
なぜ私には方法goog.ui.Component
がないのsetModel
ですか?goog.base(this, opt_domHelper);
オブジェクトにDOMヘルパーがあるため、への呼び出しが機能していることがわかります。