使用Polymer Dart 1.0.0-rc.6,使用 <link rel ...>
进行 html 导入是否有差异或有任何建议对比 Dart 的导入语法; import '...'
?
如果我使用 Dart 的 import
,通常它会省略一个警告,因为我只导入将元素加载到 Polymer 中的“副作用”,但实际上并没有在 Dart 代码中使用它,在这种情况下,我可以通过简单地键入一些存在的类名来抑制警告在导入的 Dart Polymer 元素中的某处,后跟 ;
,但是某些 dart 聚合物元素没有公开任何类,因此在这种情况下我无法抑制警告,例如: 'package:polymer_elements/iron_icons.dart';没有导出的类,我可以简单地输入来抑制。
换句话说,我使用 dart 的导入机制还是通过 HTML 导入来导入元素有什么关系吗? dart 团队是否有计划支持抑制此类警告?
最佳答案
Dart 导入 import '...';
是要走的路。我没见过<link rel="import" >
推荐任何地方。
另一种解决方法是在 Dart 文档注释中引用导出的标识符
import 'package:polymer_elements/paper_item.dart';
/// Silence analyzer [PaperItem]
@PolymerRegister('some-element')
class SomeElement extends PolymerElement { ...
如果我有样式模块(仅限 HTML),其中 *.dart 文件的唯一目的是能够使用 Dart 导入来导入样式模块,我会添加一些标识符,例如
const myStyleSilence = 0;
能够在 Dart 文档注释中引用它以消除未使用的导入警告。
Dart 导入的主要优点是使用奇怪且复杂的规则来构建 <link rel="import" src="...">
的正确路径。可以避免(参见https://www.dartlang.org/polymer-old/app-directories.html#into-a-non-dart-file-1)。
通过 Dart 导入,重构支持可以(或应该)更好地发挥作用。
我当然希望最终能够抑制未使用的导入警告。为了使分析仪更具可配置性,我们正在进行大量工作。 Polymer.dart 团队的成员提出了一个问题 https://github.com/dart-lang/sdk/issues/22660
关于dart - HTML 和 Dart 导入的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33683346/