在 NativeScript Angular 应用程序中获取 ScreenMetrics

Getting ScreenMetrics in a NativeScript Angular App

如何在 NativeScript Angular 2 应用程序中访问 ScreenMetrics

是否应该使用 Angular 的 DI 系统,注入 ScreenMetrics?我猜不是,因为尽管 Import 语句很好,但下面的语句不起作用。我在控制台中看到奇怪的错误。

import { Component } from '@angular/core';
import { ScreenMetrics } from 'platform';

@Component({
  selector: 'home',
  templateUrl: 'components/home/home.component.html',
})
export class HomeComponent {
  constructor(private screenMetrics: ScreenMetrics) {
    console.log(screenMetrics);
  }
}

不幸的是,文档不是很完善,大多数代码示例都是纯 JavaScript 代码。

在 NativeScript 中 Angular 要获取有关屏幕的信息,您应该使用 import { screen } from "platform"。然后你有 mainScreen,通过它你可以访问 heightDIPsheightPixelsscalewidthDIPswidthPixels 属性。在下面的示例中,您可以查看如何在 NS Angular

中访问它们
import { Component } from '@angular/core';
import { screen } from 'platform';

@Component({
  selector: 'home',
  templateUrl: 'components/home/home.component.html',
})
export class HomeComponent {
  constructor() {
    console.dump(screen.mainScreen);
    console.log(screen.mainScreen.widthPixels);
  }
}