简体   繁体   中英

What imports and script tags are required for Polymer.dart 1.0.0-rcx

为了使使用Polymer.dart的客户端应用正常工作,需要哪些导入和脚本标签?

<!DOCTYPE html>
  <head>
    <script src="packages/web_components/webcomponents-lite.min.js"></script>
    <script src="packages/browser/dart.js"></script>
  </head>
  <body unresolved>
    <my-element></my-element>
    <script type="application/dart" src="index.dart"></script>
  </body>
</html>
  • The webcomponents-lite.min.js script adds the Polymer polyfills.
  • The dart.js is necessary for every Dart browser application to run in browsers without Dart VM.
  • The index.dart contains your custom main(); and imports <my-element> using @HtmlImports(...)

where index.dart contains

import 'package:polymer/polymer.dart';
import 'my_element.dart';

/// Silence analyzer [MyElement]
main() async {
  await initPolymer();
}

Without a custom main

import elements using <link rel="import" ...> (discouraged)

<!DOCTYPE html>
  <head>
    <script src="packages/web_components/webcomponents-lite.min.js"></script>
    <link rel="import" href="my_element.html">
  </head>
  <body unresolved>
    <my-element></my-element>
    <script type="application/dart">export 'package:polymer/init.dart';</script>
    <script src="packages/browser/dart.js"></script>
  </body>
</html>

or using @HtmlImport(...) for importing elements

<!DOCTYPE html>
  <head>
    <script src="packages/web_components/webcomponents-lite.min.js"></script>
  </head>
  <body unresolved>
    <my-element></my-element>
    <script type="application/dart">
      export 'package:polymer/init.dart';
      import 'my_element.dart';
    </script>
    <script src="packages/browser/dart.js"></script>
  </body>
</html>

Hint: Without an explicit script tag for main it's more difficult to register the entry-point for the reflectable transformer. Some name for a generated file can be used instead but I don't know yet what this files name is.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM