我有几个模板(Polymer和Dart)工作正常。但我无法理解Dart编辑器在我(另一个)模板中有(我的)模板的情况下抱怨。 我有一个“工作人员”的模板 - 它扩展了PolymerElement 我有一个“人”的模板 - 它扩展了PolymerElement 我不能在“工作人员”中动态创建一个“人”,抱怨:人'没有默认构造函数' 这是我的员工代码:
import 'package:polymer/polymer.dart';
import 't_person.dart';
@CustomTag('t-staff')
class tstaff extends PolymerElement {
tstaff.created() : super.created() {}
void addPersonButton(){
tPerson tpe = new tPerson(); //ERROR HERE 'tPerson does not have default constructor'
....
这是我的tPerson代码(没有错误):
import 'package:polymer/polymer.dart';
@CustomTag('t-person')
class tPerson extends PolymerElement {
tPerson.created() : super.created() { }
}
我不允许以这种方式使用模板吗?儿童模板的深度是否有限制?
答案 0 :(得分:2)
如果要创建Polymer元素的新实例,则需要执行new Element.tag('t-person');
如果将其添加到默认构造函数中,您将获得更方便的方法。
@CustomTag('t-person')
class tPerson extends PolymerElement {
tPerson.created() : super.created();
factory tPerson tPerson() {
return new Element.tag('t-person');
}
}