2013-12-05 6 views
4

У меня возникла проблема при развертывании кода Дарта с использованием Polymer для Javascript. Я создал полимерное приложение с DartEditor и сделал простой пример. Этот пример работает в Dartium, но когда я пытаюсь создать его как приложение Polymer (в Javascript) и запускаю его, приложение выходит из строя.Как развернуть приложение Dart Polymer в Javascript, используя dart2js

Как я могу конвертировать приложение Dart Polymer в Javascript?

Вот пример кода, я сделал это не удается:

example.html:

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8"> 
    <title>Example</title> 

    <link rel="import" href="example-polymer.html"> 
    <script type="application/dart">export 'package:polymer/init.dart';</script> 
    <script src="packages/browser/dart.js"></script> 
    </head> 
    <body> 
     <div is="example-polymer"></div> 
    </body> 
</html> 

пример-polymer.html

<polymer-element name="example-polymer" extends="div"> 
    <template> 
    <div> 
     <input on-change="{{ change }}"/><br> 
     <span>Text : {{ text }}</span> 
    </div> 
    </template> 
    <script type="application/dart" src="example-polymer.dart"></script> 
</polymer-element> 

пример-polymer.dart

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

@CustomTag('example-polymer') 
class ExampleBolymer extends DivElement with Polymer, Observable { 
    @published String text = "" ; 

    ExampleBolymer.created() : super.created() { 
    } 

    void change(Event e, var detail , InputElement target) { 
    text = target.value; 
    } 
} 

ответ

6

добавить

transformers: 
- polymer: 
    entry_points: 
    - web/example.html 

к вашему pubspec.yaml и вызвать

pub build 

Ваши файлы должны быть в web директории вашего пакета.

+0

Это «генерация» файлов в «вне» директории. И после компиляции в JS он все равно не работает :( – Benji

+0

Вы запустили его из DartEditor или вы запустили 'dart2js'? Меню AFAIK DartEditor для запуска dart2js не обновлены (WIP). I имел лучший опыт, вызывающий 'pub build' или' pub build --mode = debug' в командной строке в корневом каталоге пакета. –

+0

это результат :(: http://pastebin.com/naNjNk2z – Benji