@freakycoder/react-native-helpers

中文文档
2.5.1发布于 2025/02/26MITTypeScriptCommonJS零依赖近 30 天下载 2651

一个中的所有帮助者; iPhone 系列支持, 维度帮助者, has Notch 帮助者, 正常的文本帮助者和文本帮助者, 对 React Natural 非常容易使用

中文使用文档
文档目录15 节
  1. 安装
  2. 原生反应
  3. 设备信息使用
  4. Notch 动态岛使用法( D)
  5. 通过链接打开应用程序或存储
  6. 文本使用规范化
  7. 原生数字格式使用
  8. 设备信息软件
  9. 设备信息软件
  10. Utils 道具
  11. 规范文本道具
  12. 自定义文本道具
  13. 路线图
  14. 作者
  15. 许可证
React Native Helpers

Battle Tested ✅

一个中的所有帮助者; iPhone 系列支持, 维度帮助者, has Notch 帮助者, 正常的文本帮助者和文本帮助者, 对 React Natural 非常容易使用

npm version npm expo-compatible Platform - Android and iOS License: MIT

React Native Helpers

安装

添加依赖 :

原生反应

npm i @freakycoder/react-native-helpers

设备信息使用

import {
  Screen,
  ScreenWidth,
  ScreenHeight,
  isIOS,
  isAndroid,
  isTablet
} from "@freakycoder/react-native-helpers";

<View>
  <Container title="Device OS" subtitle={isIOS ? "iOS" : "Android"} />
  <Container title="Screen Height" subtitle={ScreenHeight} />
  <Container title="Screen Width" subtitle={ScreenWidth} />
  <Container title="Tablet?: " subtitle={isTablet ? "Tablet" : "Phone"} />
</View>;

Notch 动态岛使用法( D)

import {
  getStatusBarHeight,
  hasNotch,
  hasNotchOnly,
  hasDynamicIsland,
  getStatusBarHeight,
} from "@freakycoder/react-native-helpers";

<View>
  <Container
    title="hasNotch?"
    subtitle={hasNotch() ? "Has Notch" : "NOT notch"}
  />
  <Container
    title="hasDynamicIsland?"
    subtitle={
      hasDynamicIsland(Screen) ? "Has Dynamic Island" : "NOT Dynamic Island"
    }
  />
  <Container title="getStatusBarHeight?" subtitle={getStatusBarHeight()} />
</View>;

通过链接打开应用程序或存储

import { openAppInPlayStore, openAppInAppStore, openExternalApp } from "@freakycoder/react-native-helpers";

openAppInPlayStore('com.example.android');
openAppInAppStore('123456789');
openExternalApp('com.example.android', '123456789');

文本使用规范化

实现不同设备字体大小正常化的方法

import { normalizeText } from "@freakycoder/react-native-helpers";

fontSize: normalizeText(24),

原生数字格式使用

格式化文本编号的方法。 你可以改变每个选项.

import { numberFormat } from "@freakycoder/react-native-helpers";

<Text>{numberFormat(50319341)</Text> // Output: 50.319.341
<Text>
  {numberFormat(1093495, "en", {
    style: "currency",
    currency: "GBP"
  })}
</Text>// Output: £ 50.319.341

配置 - 道具

设备信息软件

财产类型说明
是IOS系统布尔返回是否为 iOS 设备
类机器人布尔返回是否为Android设备
列表布尔如果是平板电脑或电话,则返回
屏幕宽度编号获得设备的屏幕宽度
屏幕高度编号获得设备屏幕高度
屏幕比例编号获得设备屏幕比例
屏幕缩放编号获得设备的屏幕字体比例( 取决于用户的设备字体比例设置)
窗口宽度编号获得设备的窗口宽度
窗口高度编号获得设备的窗口高度
窗口缩放编号获得设备的窗口比例
窗口缩放编号获得设备的窗口字体比例( 取决于用户的设备字体比例设置)
平台服务器编号返回平台版本
屏幕明码编号获得设备的屏幕宽度/ 高度, 即 最低 取决于地貌或肖像模式
屏幕麦克斯编号获得设备的屏幕宽度/ 高度, 即 上限 取决于地貌或肖像模式
页:1编号获得设备的高度,但作为一个 视图端口单位
维编号获得设备的宽度,但作为一个 视图端口单位
维明编号获得设备的屏幕宽度/ 高度为 视图端口单位 它们是 最低 取决于地貌或肖像模式
vmax 图像编号获得设备的屏幕宽度/ 高度为 视图端口单位 它们是 上限 取决于地貌或肖像模式
获取DeviceLanguage 语言字符串获取设备的语言( en US)

设备信息软件

获得状态 BarH8, has Notch, has Notch Only, has Dynamic Island

财产类型说明
备忘函数如果设备有正弦, 返回
仅此而已函数返回,如果设备仅具有非曲直,则不检测设备是否有动态岛
有动态岛函数如果设备有动态岛,则返回
获得状态编号返回设备的状态栏高度

Utils 道具

财产类型说明
打开 AppInPlayStore函数( 应用程序包Name在 Android 或 Google Play 上打开应用程序
打开 AppInAppStore函数( appStoreId)在 ios 或 App Store 上打开应用程序
打开外部App函数( 应用程序包Name, appStoreId)在 ios 或 android 上打开应用程序 - 处理平台

规范文本道具

财产类型说明
常态函数(数目)返回规范字体大小

自定义文本道具

财产类型说明
数字格式函数( 值、 位置、 选项)返回带有给定参数的数字格式字体

路线图

  • 自由主义
  • 字体
  • iPhone 系列支持
  • 动态岛屿
  • 从设备中分离样式帮助
  • 更多自定义文本助手
  • 写一篇关于介质上的 lib 的文章

作者

怪人编剧, 库拉约贡@gmail.com

许可证

麻省理工学院的许可下可提供React Independent Helpers Library. 更多信息见LICENSE文件.

版本与发布记录

@freakycoder/react-native-helpers 共发布 22 个版本,首次发布于 2019/05/12;过去 12 个月发布了 0 个版本。

版本发布日期距今
2.5.1latest2025/02/261.7 年前
2.5.02025/02/051.8 年前
2.4.02024/09/132 年前
2.3.02023/11/302 年前
2.2.22023/09/173 年前
2.2.12023/09/093 年前

关于 @freakycoder/react-native-helpers 的常见问题

@freakycoder/react-native-helpers 是什么?

一个中的所有帮助者; iPhone 系列支持, 维度帮助者, has Notch 帮助者, 正常的文本帮助者和文本帮助者, 对 React Natural 非常容易使用

如何安装 @freakycoder/react-native-helpers?

在项目目录运行 npm install @freakycoder/react-native-helpers,或使用 pnpm add / yarn add / bun add。

@freakycoder/react-native-helpers 支持 TypeScript 吗?

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

@freakycoder/react-native-helpers 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@freakycoder/react-native-helpers 可以商用吗?

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

@freakycoder/react-native-helpers 的下载量有多少?

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

@freakycoder/react-native-helpers 还在维护吗?

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