@foblex/platform

中文文档
1.0.4发布于 2024/09/25MITTypeScriptESM + CJS近 30 天下载 35.4万

Angular 库为支持服务器侧渲染(SSR)和其他特性提供一套服务.

中文使用文档
文档目录12 节
  1. 特征
  2. 安装
  3. 使用量
  4. 平台服务
  5. 浏览器服务器
  6. 窗口定位喷出键( L)
  7. API 密码
  8. 平台服务
  9. 浏览器服务器
  10. 窗口注入键( F WINDOW)
  11. 局部注入键( F LOCAL STORAGE)
  12. 许可证

角平台浏览器工具库( B)

这个Angular库提供一套服务来协助平台检测,服务器侧渲染(SSR)支持,以及浏览器的公用功能. 库提供确定浏览器和操作系统细节的服务,管理窗口和本地Storage等特定浏览器对象,并配合DOM相关的任务,如将单元转换为像素等.

特征

  • 平台检测:检测浏览器类型(如Edge,Firefox,Safari等)和操作系统(如Windows,MacOS,iOS,Android等).

  • 服务器- Side 渲染( SSR) 兼容性:为安全部门改革环境提供模拟实施窗口和本地Storage.

  • 浏览器服务: 用于与窗口、文档交互和将 CSS 单元转换为像素的设备.

安装

要在您的 Angular 项目中安装库, 请运行 :

npm install @foblex/platform

使用量

平台服务

平台服务允许您检测浏览器,操作系统,以及其他与平台相关的属性.

示例

import { PlatformService } from '@foblex/platform';

@Component({
  selector: 'app-root',
  template: `<h1>Platform Detection</h1>`
})
export class AppComponent {
  constructor(private platformService: PlatformService) {
    console.log('Is Browser:', this.platformService.isBrowser);
    console.log('Operating System:', this.platformService.getOS());
  }
}

浏览器服务器

浏览器Service提供了浏览器相关对象如窗口,本地Storage,和文档的方便访问. 它包括一种将各种 CSS 单元转换为像素值的效用方法.

示例

import { BrowserService } from '@foblex/platform';

@Component({
  selector: 'app-root',
  template: `<h1>Browser Utilities</h1>`
})
export class AppComponent {
  constructor(private browserService: BrowserService) {
    console.log('Document Title:', this.browserService.getTitle());
    console.log('Pixels from 50%:', this.browserService.toPixels('50%', 800, 600, '16px'));
  }

  setTitle(title: string): void {
    this.browserService.setTitle(title);
  }
}

窗口定位喷出键( L)

此库提供可被注入的令牌(F WINDOW和F LOCAL STORAGE),可以将取去的窗口和本地Storage同时用于浏览器和服务器侧环境.

示例

import { Component, Inject } from '@angular/core';
import { F_WINDOW, F_LOCAL_STORAGE } from '@foblex/platform';

@Component({
  selector: 'app-root',
  template: `<h1>SSR Safe Window & LocalStorage</h1>`
})
export class AppComponent {
  constructor(
    @Inject(F_WINDOW) private windowService: WindowService,
    @Inject(F_LOCAL_STORAGE) private localStorageService: LocalStorageService
  ) {
    console.log('Window Inner Width:', this.windowService.innerWidth);
    this.localStorageService.setItem('key', 'value');
  }
}

API 密码

平台服务

  • 是浏览器: boolean - 确定当前平台是否为浏览器 .
  • EDGE:布尔 -- -- 探测微软边缘浏览器.
  • TRIDENT:布尔 -- -- 探测因特网探测器(三叉戟引擎).
  • BLINK:布尔 -- -- 探测出Brink引擎(由Chrome使用).
  • WEBKIT:布尔-探测WebKit引擎(被Safari所使用).
  • IOS:布尔-探测iOS设备.
  • 布尔 -- -- 检测出莫兹拉火狐.
  • 布尔 -- -- 探测到安卓装置.
  • 布尔 -- -- 探测到Safari浏览器.
  • getOS (): EOperationSystem QQ未定义 - 返回操作系统.

浏览器服务器

  • 窗口: IWindow Service - 提供窗口或服务器安全模型的访问权限.
  • localStorage: I LocalStorage - 提供访问localStorage或服务器安全模拟器的功能.
  • 文档:文档 - 提供对文档对象的访问.
  • toPixels(值:字符串,客户端Width:数字,客户端H8:数字,字体Size:字符串):数字-将CSS单位(%,em,rem,vh,vw)转换为像素.

窗口注入键( F WINDOW)

注入窗口对象或服务器安全模拟窗口.

局部注入键( F LOCAL STORAGE)

注入本地Storage对象或服务器安全模拟本地Storage.

许可证

MIT 许可证

版本与发布记录

@foblex/platform 共发布 5 个版本,首次发布于 2024/09/11;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.4latest2024/09/252 年前
1.0.32024/09/132 年前
1.0.22024/09/122 年前
1.0.12024/09/112 年前
1.0.02024/09/112 年前

关于 @foblex/platform 的常见问题

@foblex/platform 是什么?

Angular 库为支持服务器侧渲染(SSR)和其他特性提供一套服务.

如何安装 @foblex/platform?

在项目目录运行 npm install @foblex/platform,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@angular/common(>=12.0.0)、@angular/core(>=12.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@foblex/platform 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@foblex/platform 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@foblex/platform 可以商用吗?

@foblex/platform 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@foblex/platform 的下载量有多少?

根据 npm 官方下载统计,@foblex/platform 在 2026/10/15 – 2026/11/13 这 30 天内被下载 354,201 次,日均约 11,807 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@foblex/platform 还在维护吗?

最新版本 1.0.4 发布于 2024/09/25(2 年前);至今共发布 5 个版本,其中过去 12 个月发布了 0 个;首次发布于 2024/09/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。