小编Jer*_*ied的帖子

更新消费者之外的反应上下文?

我试图了解新的 React context API 是如何工作的。

在 redux 中,组件有可能在不知道状态的情况下了解调度操作。这允许更新 redux 状态,而不会导致不关心该状态的组件重新渲染。

例如我可以有

<Updater onClick={updateCount}/>
Run Code Online (Sandbox Code Playgroud)

<Consumer value={count}/>
Run Code Online (Sandbox Code Playgroud)

Updater连接到dispatch(updateCount())Consumer通过 连接到计数的当前值state.count。更新时state.count,仅Consumer重新渲染。对我来说,这是一个至关重要的行为。

在反应上下文中,复制这种行为似乎非常困难。我希望能够更新状态,而不会导致想要更改上下文但实际上并不关心状态的组件进行不必要的重新渲染。

如果组件不在使用者内部,它们如何可能触发上下文更新?我绝对不想通过在提供者级别设置状态来触发对整个树的更新。

javascript reactjs react-redux react-context

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

Jest 在测试期间未显示绿色进度条

当我运行笑话测试时,绿色进度条和统计信息不会打印到控制台。

它只是打印RUNS path/to/my/test,然后在我的整个测试套件完成后的最后,它打印统计数据。

绿色状态栏不显示有什么原因吗?

end-to-end jestjs babel-jest

6
推荐指数
0
解决办法
723
查看次数

卸载app后如何去除github自动检查和部署

我从 github 卸载了 Vercel 应用程序,但当我提交代码或打开拉取请求时,它仍在运行检查和自动部署。如何删除应用程序安装的所有自动检查、环境和部署?我认为卸载应用程序会默认删除自动化功能,但我想事实并非如此。这是在私人仓库上。

感谢您的帮助!

在此输入图像描述

在此输入图像描述

在此输入图像描述

github github-api github-actions

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

空字符串的长度怎么可能大于 0?

我在尝试运行 JS 条件检查空字符串时遇到了这个错误。在 Chrome 调试器中,空字符串的计算长度为 1,有时甚至为 2。它发生在 React 应用程序中。我对 proto 仍然如何正常工作感到非常困惑,但正常的长度方法却没有。

在此处输入图片说明

javascript prototype string-length

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

类型“CSS StyleDeclaration”不可分配给类型“CSS Properties”

我正在使用 typescript 进行反应,并尝试编写一个模块,该模块从 DOM 元素中获取样式对象并将其作为样式属性传递到新的 JSX 元素中。

像这样的东西:

<div style={domElement.style} />
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我遇到了打字稿错误:

<div style={domElement.style} />
Run Code Online (Sandbox Code Playgroud)

domElement.style 如下所示:

Type 'CSSStyleDeclaration' is not assignable to type 'CSSProperties'.
Types of property 'backfaceVisibility' are incompatible.
    Type 'string' is not assignable to type '"hidden" | "inherit" | "-moz-initial" | "initial" | "revert" | "unset" | "visible" | undefined'. 
Run Code Online (Sandbox Code Playgroud)

有没有什么方法可以使用 DOM 样式作为 React 样式而不遇到打字稿错误?

css dom typescript reactjs

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

如何在 Jest 中将 shell 脚本作为安装文件运行?

像这样的东西。目标是作为笑话设置的一部分启动和停止我的测试服务器,以便我可以使用单个命令进行端到端测试。

"jest": {
  "setupFiles": ["<rootDir>/TestScript.sh"]
} 
Run Code Online (Sandbox Code Playgroud)

shell end-to-end jestjs yarnpkg

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