小编Gen*_*ena的帖子

在 TypeScript 中反应组件类型

在 TypeScript 中描述 React 组件类型的正确方法是什么?假设我们有一个返回反应组件的函数。功能:

const getTabContent: () => ReactElement = () => {
  switch (tab) {
    case 1:
      return <Images images={images} onSelect={onSelect}/>;
    default:
      return <Search onSelect={onSelect}/>;
  }
};
Run Code Online (Sandbox Code Playgroud)

在这里,我将返回类型描述为ReactElement,但我想知道它是否正确,或者我应该将其描述为ReactComponentElement还是以某种方式完全不同?此外,这两种类型都是泛型,如果其中一种是正确的,如何完全描述它们?

UPD ReactElement 似乎适合这里,因为,例如,FC (FunctionComponent) 返回它

typescript reactjs

20
推荐指数
3
解决办法
3万
查看次数

使用less.js获取更少的变量列表

我正在使用客户端less.js. 有没有办法从我的较少的文件中获取所有变量.我知道如何修改变量:

less.modifyVars({
  "@var": "#fff"
});
Run Code Online (Sandbox Code Playgroud)

但我希望得到所有这些,如(不工作):

var variables = less.getVars();
Run Code Online (Sandbox Code Playgroud)

javascript css variables less

19
推荐指数
1
解决办法
2789
查看次数

使用当前道具对 useEffect 清理进行反应

当组件被卸载但可以访问当前道具时,我遇到了清理 useEffect 的需要。就像 componentWillUnmount 可以通过获取 this.props.whatever 来做

这是一个小例子:单击“设置计数”按钮 5 次,然后查看您的控制台。您将在组件 B 的 console.log 中看到 0,无论“计数”为 5 https://codesandbox.io/embed/vibrant-feather-v9f6o

如何实现在 useEffect 清理函数中获取当前道具的行为(在我的例子中为 5)?

更新:将 计数传递给 useEffect 的依赖项将无济于事,因为:

  1. 每次传递给 props 的新计数都会调用清理
  2. 最后一个值将是 4 而不是所需的 5

javascript reactjs

8
推荐指数
1
解决办法
2322
查看次数

input[type="file"] 确定用户是否未选择任何文件

当用户单击输入[type =“file”]时,它会显示一个弹出窗口以选择文件

用户可以选择一项并单击“确定”或单击“取消”

当他们单击“确定”时 - 这是 onChange 事件,太棒了

取消时 - 没有活动或我不知道

所以问题是:

当用户单击“取消”时会触发什么事件,或者如何以不同方式确定单击“取消”后没有选择任何文件?

javascript

1
推荐指数
1
解决办法
566
查看次数

标签 统计

javascript ×3

reactjs ×2

css ×1

less ×1

typescript ×1

variables ×1