1
Relativley新角度和飞镖我有以下问题:如何在Angular 2 Dart中通过ID选择模板元素?
my_component.dart:
import 'package:angular2/core.dart';
import 'package:angular2_components/angular2_components.dart';
import 'package:google_maps/google_maps.dart';
import 'dart:html';
@Component(
selector: 'google-route-map',
styleUrls: const ['my_component.css'],
templateUrl: 'my_component.html',
directives: const [materialDirectives],
providers: const [materialProviders],
)
class MyComponent {
MyComponent() {
var m = querySelector("#my-canvas");
print (m); // is null
// do something with m....
}
}
my_component.html:
<div id="my-canvas"></div>
据我理解了问题是, querySelector
查询只有基地dom不是shadowDom。
但是,我该如何简单地查询我的模板中的ID?
这要看'#我-canvas'来自以及它是如何创建的。您的问题不包含任何有关的信息。根据你的编辑,它是组件模板的一部分,否则'@ViewChild()'不起作用 - 但@ViewChild()不是“按ID选择”。所以我对你的答案有点困惑。 –
是它的组件模板的一部分。然而,对于querySelector,元素仍然是“空”。是否有另一种通过ID选择的可能性?错过了什么可能? – Blackbam
我更新了我的答案。这应该工作。但'@ViewChild()'通常是更好的用例。 –