如何使用Angular2和Typescript获取设备信息

时间:2018-06-11 10:10:03

标签: windows angular typescript navigator

我有一张桌子,我需要从打字稿中填写这些细节。

1.Device Name
2. Device OS
3. Location
4. Browser
5. IsActive

这些字段必须从打字稿中填写,所以任何人都可以帮我解决这个问题

1 个答案:

答案 0 :(得分:4)

您可以使用 ngx-device-detector

  

ngx-device-detector是一个Angular 2(及以上)动力AOT   兼容的设备检测器,有助于识别浏览器,操作系统和   有关使用该应用程序的设备的其他有用信息。该   处理基于用户代理。

<强>安装:

要安装此库,请运行:

$ npm install ngx-device-detector --save

<强>用法:

Import DeviceDetectorModule in your app.module.ts

  import { NgModule } from '@angular/core';
  import { DeviceDetectorModule } from 'ngx-device-detector';
  ...
  @NgModule({
    declarations: [
      ...
      LoginComponent,
      SignupComponent
      ...
    ],
    imports: [
      CommonModule,
      FormsModule,
      DeviceDetectorModule.forRoot()
    ],
    providers:[
      AuthService
    ]
    ...
  })

在您要使用设备服务的组件中

import { Component } from '@angular/core';
  ...
  import { DeviceDetectorService } from 'ngx-device-detector';
  ...
  @Component({
    selector: 'home',  // <home></home>
    styleUrls: [ './home.component.scss' ],
    templateUrl: './home.component.html',
    ...
  })

  export class HomeComponent {
    deviceInfo = null;
    ...
    constructor(..., private http: Http, private deviceService: DeviceDetectorService) {
      this.epicFunction();
    }
    ...
    epicFunction() {
      console.log('hello `Home` component');
      this.deviceInfo = this.deviceService.getDeviceInfo();
      console.log(this.deviceInfo);
    }
    ...
  }

设备服务:

保留以下属性:

  • 浏览器
  • OS
  • 设备
  • 的userAgent
  • OS_VERSION