我正在尝试使用 Angular 更改 NativeScript 中某些 Switch 元素的宽度,因为在我看来它们太小了。我发现没有办法通过 NativeScript 的 CSS 子集来做到这一点,这意味着我必须对原生对象本身进行更改。
为此,我为模板中的每个开关添加了一个模板引用变量,如下所示:
<Switch #switch checked="false"></Switch>
然后在我的课堂上,我尝试像这样访问它们的android
和nativeView
属性:
@Component({
selector: "Settings",
moduleId: module.id,
templateUrl: "./settings.component.html"
})
export class SettingsComponent implements AfterViewInit {
@ViewChildren("switch") switches: QueryList<ElementRef>;
constructor(public calc: CalculationService) {
}
ngAfterViewInit() {
console.log("afterViewInit switches: ", this.switches.length);
if(isAndroid) {
this.switches.forEach(
(item) => {
const nelem = item.nativeElement;
console.log(nelem.android);
console.log(nelem.nativeView);
}
);
}
}
}
console.log
但是我访问它们的两个语句只是 print undefined
。如何获得交换机的本机视图?