如何在 react native 中从普通函数中获取上下文值?(没有使用Context或类组件)

我的期望场景如下:我的应用有两种模式:英文和阿拉伯文。所以,场景是如果模式是阿拉伯语,我必须做{flexDirection:’row-reverse’}。所以,我现在的方法是检查App模式和应用样式。所以,我在单独的文件中写了一个通用函数,返回修改后的样式。但是一些Hooks约束不允许使用’useContext’。我的代码段出现了错误。

import {AppModeConsumer} from '../context/AppContext';
import {useContext} from 'react';

const styleFormat = style => {
  const mode = useContext(AppModeConsumer);
  console.log('MODE:', mode);
  if (mode === 'arabic') {
    if (style.flexDirection === 'row') {
      return Object.assign({}, style, {flexDirection: 'row-reverse'});
    }
  }
  return style;
};

有没有其他的方法来获取这个上下文值?

解决方案:

如果你按照 “钩子的规则” 你可能说的唯一的 “约束 “是一个lint警告。

自定义钩子名称必须与 use 前缀。

const useStyleFormat = style => {...};

给TA打赏
共{{data.count}}人
人已打赏
未分类

如何防止硬关机后启动时pg wals删除?

2022-9-8 22:00:41

未分类

新建一列的mutate和ifelse,但在R中保留NAs。

2022-9-8 22:11:27

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索