0

このチュートリアルから学び始めたところです: https://github.com/angular/angular.dart.tutorial/wiki/Creating-a-Custom-Component

私は問題に行き詰まっており、助けを求めています。評価コンポーネントは表示されず、呼び出されたメソッドはありません(少なくともブレークポイントではありません)。ここでコードを見ることができます: https://www.dropbox.com/s/oizzl9k6nclgoqd/SecondAngularDart.zip

このような状況をデバッグするにはどうすればよいですか? または何が問題なのですか?

@NgComponent(
  selector:'rating',
  templateUrl:'rating_component.html',
  cssUrl:'rating_component.css',
  publishAs:'cmp'
)
class RatingComponent {
  static const String _starOnChar = "\u2605";
  static const String _starOffChar = "\u2606";
  static const String _starOnClass = "star-on";
  static const String _starOffClass = "star-off";

  List<int> stars = [];

  @NgTwoWay('rating')
  int rating;

  @NgAttr('max-rating')
  int maxRating(String max) {
    stars = [];
    var count = max == null ? 5 : int.parse(max);
    for(var i=1; i <= count; i++) {
      stars.add(i);
    }
  }

  String starClass(int star) {
    return star > rating ? _starOffClass : _starOnClass;
  }

  String starChar(int star) {
    return star > rating ? _starOffChar : _starOnChar;
  }

  void handleClick(int star) {
    if (star == 1 && rating == 1) {
      rating = 0;
    } else {
      rating = star;
    }
  }
}
4

2 に答える 2

1

わかりました、それは初心者の間違いでしたが、私はこのようにコンポーネントを使用しました:

<rating max-rating="5" rating="{{ctrl.selectedRecipe.ratings}}"></rating>

ただし、次のように使用する必要があります。

<rating max-rating="5" rating="ctrl.selectedRecipe.ratings"></rating>
于 2014-02-02T13:55:47.213 に答える