我正在使用polymer.dart在dart中构建应用程序,我意识到我需要一些方法来在我的Polymer元素之间进行通信。我已经把目光投向了event_bus,我正试图让它与聚合物一起使用。
然而,当我尝试将我的PolymerElement类放入my_lib时,我得到以下错误:
line 1 pos 6: url expected
part of my_lib;
^
我知道似乎每个PolymerElement都应该是自包含的,但我很难弄清楚如何处理从一个PolymerElement到另一个PolymerElement的通信。
简而言之,我想知道的是我如何将我的元素放在同一个库中,这样他们就可以共享一个事件总线,或者处理Polymer元素之间通信的首选方式是什么?
我似乎无法找到PolymerElements之间的任何通信示例,因此我们将非常感谢指向文档或示例的指示。
答案 0 :(得分:3)
你是对的,最好只在一个库中只有一个Polymer元素,而不是别的。
我使用PolymerElements和EventBus 这没问题。您不必将所有类放在同一个库中即可使用它们。 只需导入您需要的内容。
如果您要在包lib
目录中导入要导入的文件,请将它们导入到某些相关包中。
import 'package:yourpackagename/file_to_import.dart';
import 'package:yourpackagename/src/file_to_import.dart'; // just to show that other paths work too
import 'package:yourpackagename/src/someotherdir/file_to_import.dart'; // - " -
import 'package:yourpackagename/anotherdir/someotherdir/file_to_import.dart'; // - " -
如果要导入的文件位于应用程序包的web
目录或web
的任何子目录中,请使用相对路径,如
import 'file_to_import.dart'
import 'src/file_to_import.dart'; // just to show that other paths work too
import 'someotherdir/file_to_import.dart'; // - " -
import 'anotherdir/someotherdir/file_to_import.dart'; // - " -
导入库后,您可以访问所有非私有类/函数/变量,就像它们位于同一个库中一样。