1

<my-table>多数の列を含むことができる新しい要素を定義したい<mytable-col> 使用法は次のようになります。

<my-table id="mt1">
 <mytable-col id="c1" title ="name" type="string"width="150"></mytable-col>
 <mytable-col id="c2" title ="age" type="number" width="60"></mytable-col>
</my-table>

別の (必須の) 新しい「内部」要素で要素を定義することは可能ですか? 外側の dart コードから内側の要素インスタンスのマークアップにアクセスするにはどうすればよいですか。

のテンプレートと の両方にマークアップが含まれている場合<my-table><mytable-col>内部のマークアップはどこに<mytable-col>挿入されますか?

4

2 に答える 2

1

マークアップを記述した方法では、<mytable-col>要素はその子であり、要素内のノードに<my-table>追加されます。<content><my-table>

<mytable-col>好きなコードからそれらの子要素にアクセスできます

var listContent = ($['content'] as ContentElement).getDistributedNodes();

私はあなたが何を意味するのか分かりません

別の (必須の) 新しい「内部」要素で要素を定義することは可能ですか?

enteredView()メソッドにコードを追加できます(super.enteredView();ノードで適切な子ノードが使用可能であることを確認し、<content>そうでない場合は例外をスローする呼び出しの後)。

挿入されたインナーのマークアップはどこにありますか?

マークアップはその要素に挿入されますshadowDOM
マークアップは要素の外観を変更しますが、通常は表示されません。
たとえばview source、ブラウザーから開いた場合などです (ただし、Chromium/Dartium で表示するオプションを有効にした場合、shadowDOMまたはブラウザーがサポートしていないshadowDOM場合は、ポリフィルがどのようにエミュレートしようとするかがわかります)。shadowDOM)。

このタグを追加するだけで多くの要素が作成されるようなタグと比較できます<video>(再生、停止、続行、早送りボタン、およびレイアウトを担当する舞台裏で追加されるレイアウト用の<span>s およびs など)。<div>および<video>タグの動作ですが、マークアップには表示されません。

于 2014-01-09T09:05:05.063 に答える