詹姆斯·威尔德 / react-native-app-helpers
构建 React Native 应用程序所使用的通用工具。
v0.0.121
2024-08-13 14:46 UTC
Requires
- php: ^8.0
- laravel/framework: ^8
Requires (Dev)
- mockery/mockery: 1.5.0
- phpunit/phpunit: 9.5.13
- vimeo/psalm: 4.19.0
- dev-master
- v0.0.121
- v0.0.120
- v0.0.119
- v0.0.118
- v0.0.117
- v0.0.116
- v0.0.115
- v0.0.114
- v0.0.113
- v0.0.112
- v0.0.111
- v0.0.110
- v0.0.109
- v0.0.108
- v0.0.107
- v0.0.106
- v0.0.105
- v0.0.104
- v0.0.103
- v0.0.102
- v0.0.101
- v0.0.100
- v0.0.99
- v0.0.98
- v0.0.97
- v0.0.96
- v0.0.95
- v0.0.94
- v0.0.93
- v0.0.92
- v0.0.91
- v0.0.90
- v0.0.89
- v0.0.88
- v0.0.87
- v0.0.86
- v0.0.85
- v0.0.84
- v0.0.83
- v0.0.82
- v0.0.81
- v0.0.80
- v0.0.79
- v0.0.78
- v0.0.77
- v0.0.76
- v0.0.75
- v0.0.74
- v0.0.73
- v0.0.72
- v0.0.71
- v0.0.70
- v0.0.69
- v0.0.68
- v0.0.67
- v0.0.66
- v0.0.65
- v0.0.64
- v0.0.63
- v0.0.62
- v0.0.61
- v0.0.60
- v0.0.59
- v0.0.58
- v0.0.57
- v0.0.56
- v0.0.55
- v0.0.54
- v0.0.53
- v0.0.52
- dev-laravel-sync-8
- dev-laravel-sync
- dev-renovate/react-native-0.x
- dev-renovate/react-monorepo
- dev-renovate/metro-react-native-babel-preset-0.x
- dev-renovate/expo-monorepo
- dev-renovate/typescript-eslint-monorepo
- dev-renovate/vimeo-psalm-4.x
- dev-renovate/jest-monorepo
- dev-renovate/eslint-8.x
- dev-renovate/mockery-mockery-1.x
- dev-renovate/react-test-renderer-17.x
- dev-sync
This package is auto-updated.
Last update: 2024-09-02 20:57:42 UTC
README
构建 React Native 应用程序所使用的通用工具。
React Native
安装
npm install --save react-native-app-helpers
import { createTextComponent } from "react-native-app-helpers";
导出
组件
- 对齐
- 列
- ContainerFillingKeyboardAvoidingView
- ContainerFillingScrollView
- createBottomTabBarComponent
- createButtonComponent
- createCardComponent
- createCheckboxComponent
- createCreatableSelectComponent
- createFileStoreManagerComponent
- createFiniteStateMachineRoutingComponent
- createFixedHeightComponent
- createFixedWidthComponent
- createFlashMessageComponent
- createFlatColorBackgroundComponent
- createFullHeightPopoverComponent
- createHeaderBodyFooterComponent
- createHeaderComponent
- createHorizontalSplitButtonComponent
- createHrComponent
- createImageBackgroundComponent
- createInputComponent
- createLimitedHeightComponent
- createLimitedWidthComponent
- createMigratorManagerComponent
- createMinimumHeightComponent
- createMinimumWidthComponent
- createNullableEmailInputComponent
- createNullableFloatInputComponent
- createNullableIntegerInputComponent
- createNullablePasswordInputComponent
- createNullableTextAreaComponent
- createNullableTextInputComponent
- createOfflineTableComponent
- createPaddingComponent
- createPickerButtonComponent
- createProportionalColumnComponent
- createProportionalRowComponent
- createRequiredEmailInputComponent
- createRequiredFloatInputComponent
- createRequiredIntegerInputComponent
- createRequiredPasswordInputComponent
- createRequiredTextAreaComponent
- createRequiredTextInputComponent
- createSearchableMultiSelectComponent
- createSearchableSelectComponent
- createSessionStoreManagerComponent
- createSidebarComponent
- createStackComponent
- createStackRoutingComponent
- createStateStoreManagerComponent
- createStatusFillComponent
- createTabRoutingComponent
- createTextComponent
- createTiledComponent
- createUnderlinedTopTabBarComponent
- createVerticalSplitButtonComponent
- Hitbox
- HorizontallySymmetricalSafeAreaView
- Row
- SimpleModal
- SizedHorizontallySymmetricalSafeAreaView
钩子
- useBackButton
- useEventRefresh
- useMeasure
- useRefresh
- useStartSyncWhenTop
- useSyncFileCleanUpBlocker
- useSyncInProgress
服务
- abortControllerFactory
- errorReporter
- FileStore
- logger
- Migrator
- PermissionHelper
- PictureHelper
- Request
- SessionStore
- StateStore
- Sync
- SyncableStateHelper
- SyncController
- UuidGenerator
类型
- AbsentSyncableStateSingleton
- AwaitingPullSyncableStateCollectionItem
- AwaitingPushSyncableStateCollectionItem
- BasicTableColumn
- BorderStyle
- BottomTab
- BottomTabBarProps
- BottomTabBarStyle
- BottomTabBarStyleState
- ButtonProps
- ButtonStateStyle
- ButtonStyle
- CardProps
- CheckboxProps
- CheckboxStateStyle
- CheckboxStyle
- ControlStateStyle
- ControlStyle
- CreatableSelectProps
- CustomElementTableColumn
- CustomTextTableColumn
- EmptyRequestBody
- FileRequestBody
- FiniteStateMachineRouterState
- FiniteStateMachineRoutingProps
- FixedHeightProps
- FixedWidthProps
- FlashMessageProps
- FlashMessageState
- FlashMessageStyle
- FlatColorBackgroundProps
- HeaderBodyFooterProps
- HeaderIcon
- HeaderProps
- HeaderStyle
- ImageBackgroundProps
- Json
- JsonRequestBody
- KeyableTableCell
- LimitedHeightProps
- LimitedWidthProps
- MigratableState
- MigrationList
- MigratorInterface
- MinimumHeightProps
- MinimumWidthProps
- NonKeyableTableCell
- 可为空电子邮件输入属性
- 可为空浮点数输入属性
- 可为空整数输入属性
- 可为空密码输入属性
- 可为空文本区域属性
- 可为空文本输入属性
- 离线表格数据
- 离线表格属性
- 填充属性
- 预检响应
- 预检响应集合
- 预检响应集合项
- 预检响应单例
- 成比例列属性
- 成比例行属性
- 可推送同步状态集合项
- 查询参数
- 查询参数集
- 必填电子邮件输入属性
- 必填浮点数输入属性
- 必填整数输入属性
- 必填密码输入属性
- 必填文本区域属性
- 必填文本输入属性
- 路由
- 路由参数
- 路由表
- 可搜索多选属性
- 可搜索选择属性
- 侧边栏属性
- 排序方向
- 分割按钮状态样式
- 分割按钮样式
- 分割按钮类型样式
- 堆叠路由
- 堆叠路由属性
- 堆叠路由状态
- 堆叠路由表
- 堆叠路由属性
- 堆叠状态项
- 状态药丸属性
- 状态药丸样式
- 状态药丸样式状态
- SVG图标
- 可同步模式
- 可同步状态
- 可同步状态集合
- 可同步状态集合项
- 可同步状态单例
- 同步配置
- 同步配置集合
- 同步拉取响应
- 表格列
- 表格行
- 表格行样式
- 表格模式
- 表格样式
- 标签路由
- 标签路由表
- 标签路由属性
- 文本属性
- 下划线顶部标签
- 下划线顶部标签栏属性
- 下划线顶部标签栏样式
- 下划线顶部标签栏样式状态
- 已更新的可同步状态集合项
- 已更新的可同步状态单例
- 中止控制器工厂接口
- 错误报告器接口
- 文件存储接口
- 记录器接口
- 权限助手接口
- 图片助手接口
- 请求接口
- 状态存储接口
- 同步控制器接口
- 同步接口
- 同步状态
- UUID生成器接口
实用工具
- flattenRenderedToArray
- getRenderedKey
- intercalateRendered
- isRenderedByReact
- nop
- setRenderedKey
- showSettingsScreen
- unwrapRenderedFunctionComponent
Concepts
组件工厂方法
这里的大多数组件都通过工厂方法包装,该方法传递所有在运行时不应更改的信息。这允许对样式进行大量缓存,这应该有助于提高性能(请参阅React Native 文档)。
要使用它们,您会做类似以下的事情
import { createTextComponent } from "react-native-app-helpers"; const ExampleText = createTextComponent(`example`, `red`, 12, `left`, false); const ExampleScreen = () => ( <ExampleText> Hello World! (in the "example" font, in red, at size 12, left-aligned) </ExampleText> );
行高
本节中所有渲染文本的组件都应用了字体大小的1.4倍行高。这是为了确保iOS和Android之间的一致渲染,后者默认在文本下方有更多空间。
间距
没有组件应包含任何外部填充或间距,因为这通常是上下文相关的问题。相反,使用包装组件(这些组件提供内部填充/间距)。
限制使用内部状态
尽可能少的组件依赖于任何形式的内部状态;在可能(且实际)的情况下,所有状态都通过props传递,并通过回调(也通过props提供)向父组件建议更改。这使得组件更加可重用。
Laravel
安装
composer require jameswilddev/react-native-app-helpers