自定义库中的Polymer.dart propertyNameChanged方法无效

时间:2015-04-04 13:31:04

标签: dart dart-polymer

这是我的polymer.dart课程。

import 'package:polymer/polymer.dart';

/**
 * A Polymer x-changer element.
 */
@CustomTag('x-changer')

class XChanger extends PolymerElement {

  @published String prop;

  propChanged() {
    print("prop changed!");
  }

  /// Constructor used to create instance of XChanger.
  XChanger.created() : super.created() {
  }


}

这是我的项目结构:

  • 示例
    • chat_example
    • LIB
    • 网络
  • LIB
    • 的x changer.dart
    • 的x changer.html
  • 测试

当我添加x-changer.dart& x-changer.html在我的示例文件夹中可以正常工作。这是完全相同的代码,我错过了对聚合物元素库很重要的东西吗?

编辑: 这是图书馆pubspec

name: some_elements
description: >
  The polymer elements for ...
version: 0.0.1
author: Joris Hermans
#homepage: https://www.example.com
dependencies:
  polymer: '>=0.15.4 <0.16.0'
dev_dependencies:
  unittest: any

1 个答案:

答案 0 :(得分:1)

您需要在库中添加聚合物变换器(不带entry_points)。

你不应该像You shouldn't import like`

那样导入

看起来应该更像

您不应该像<link rel="import" href="packages/chat_example/force/force_client_element.html">

那样导入

您可能需要一个或多个额外的../前缀,具体取决于导入文件所在的位置(在Dart包中绝不需要这样做:xxx导入。

<link rel="import" href="../packages/chat_example/force/force_client_element.html">

有关详细信息,请参阅https://www.dartlang.org/polymer/app-directories.html