AngularDart模板错误:此处不允许使用[...]

时间:2017-09-25 16:46:44

标签: templates dart angular-dart

我将版本1 AngularDart升级到版本4.我在模板上的IDE中收到错误:

template: '<span class="cite-text" [citable]="citableForCitation()">{{citationText}}</span>',

错误:

Attribute [citable] in not allowed here

我在darlang英雄应用程序(4.0)中看到了一个非常相似的格式:

template: '''
  <h1>Tour of Heroes</h1>
  <hero-app-main [hero]="hero"></hero-app-main>''',

在我的代码中,我指的是教程看起来指的是一个变量的方法。所以,我必须更改模板中的格式或更改方法中的内容。有什么想法吗?

这是使用模板的一个例子:

<citation bentry=1>[Lin92]</citation>

这是完整的计划:

library citation_component;

import 'dart:html';
import 'package:angular/angular.dart';
import 'package:angular_forms/angular_forms.dart';

import 'package:citable/citable/citable.dart' show CitableModel;

@Component(
    selector: 'citation',
    template: '<span class="cite-text" [citable]="citableForCitation()">{{citationText}}</span>',
    styleUrls: const ['citation.css'],
    directives: const [formDirectives])

class CitationComponent
{
  @Input() int bentry;
  //@NgAttr('bentry')
  //int bentry;

  // Set up the decorator
  static final citable = new Expando<CitableModel>();

  final Element element;
  String citationText;

  CitationComponent(this.element)
  {
    citationText = element.innerHtml;
  }

  CitableModel citableForCitation()
  {
    if (citable[this] == null)
    {
      citable[this] = new CitableModel(bentry);
    }
    return citable[this];
  }
}

0 个答案:

没有答案