3

Dart を使用して多数の div を動的に追加しようとしています。div にはカスタム Web コンポーネントが含まれており、変数を渡そうとしています。n個の変数を指定し、それらをn個のコンポーネントに渡し、それらを HTML ドキュメントに挿入できるようにしたいと考えています。ただし、何が起こっているのかというと、挿入された div を変数なしで取得しています。これは、Dart が既に読み込まれている DOM に何かを渡そうとしているため、何もしないのだろうか...? ここにいくつかのコードがあります:

product_elem.dart:

import 'package:web_ui/web_ui.dart';
import 'dart:html';

class ProductComponent extends WebComponent {
  var productId;
}

product_elem.html:

<!DOCTYPE html>
  <html>
    <body>
      <element name="product-elem" constructor="ProductComponent" extends="div">
        <template>
          <div style="width:335px;margin:10px;">
            <h3>
              {{productId}}
            </h3>
         </div>
      </template>
      <script type="application/dart" src="product_elem.dart"></script>
    </element>
  </body>
</html>

testcase_component.dart:

import 'dart:html';
import 'package:web_ui/web_ui.dart';

var productId;

void main() {
  List myList = new List();
  myList.addAll(["Foo", "Bar", "Baz"]);
  for (var i = 0; i < myList.length; i++) {
    productId = myList[i];
    query('#products').innerHtml += 
      "<div is='product-elem' id='product_elem' product-id='{{productId}}'></div>";
  }
}

testcase_component.html:

<!DOCTYPE html>
<html>
  <head>
    <link rel="import" href="product_elem.html">
  </head>
  <body>
    <div id="products">
      <!-- Insert dynamic divs here -->
    </div>
    <script type="application/dart" src="testcase_component.dart"></script>
    <script src="packages/browser/dart.js"></script>
  </body>
</html>
4

1 に答える 1