reactjs 相关问题

React是一个用于构建用户界面的JavaScript库。它使用声明范式,旨在既高效又灵活。

使用 useLocation 开玩笑测试自定义钩子

我目前遇到一个情况,我想为我的自定义钩子编写一个单元测试,说useMyHook,其中调用了useLocation 钩子的一个简单例子是……。像这样: 导入 { useState, useEff...

回答 1 投票 0

Axios 正在以某种方式缓存我的获取用户请求以本机反应

我正在使用 Axios ("axios": "^0.19.0") 向我的后端发出 GET 请求,该请求的工作原理与我已经通过 Postman macOS 应用程序发送相同令牌进行测试一样,并返回正确的用户目的。 ...

回答 3 投票 0

MobX React - 更新对象数组的单个索引会重新渲染所有子对象

我有一个 mobx 对象存储,这些对象显示在列表视图中,并在存储值上有一个地图,如下所示: {ObjectStore.objects.map((obj, 索引) => 我有一个 mobx 对象存储,这些对象显示在列表视图中,并在存储值上有一个地图,如下所示: {ObjectStore.objects.map((obj, index) => <ObjectItem key={obj.id} obj={obj} objIndex={index} ...unrelated UI Pros /> )} 在 ObjectItem 中有一个 onClick 处理程序,它向该特定对象添加一些新内容: const handleClick = () => { ObjectStore.updateObjectbyIdx(objIndex, newData) } 在商店 updateObjectbyIdx (index, data) { this.objects[index] = { ...this.objects[index], ...data} } 两个 React 组件都包装在观察者中。当句柄单击运行时,它会导致父容器重新呈现,然后所有 ObjectItem 组件重新呈现,即使附加数据仅通过索引添加到单个项目。 最初我完全避免使用索引并使用地图更新它,如下所示: updateObjectbyId (id, data) { this.objects = this.objects.map(obj => obj.id === id ? { ...obj, ...data} : obj }) } 但我假设由于这是创建一个新的数组引用,因此父容器观察ObjectStore.objects重新渲染。 切换到索引让我期望父级不会重新渲染,因为主数组引用仍然存在,并且由于我在最新点解构了值,因此只有单个 ObjectItem 会重新渲染。 我最终确实让它发挥作用: updateObjectbyIdx (index, data) { Object.keys(data).forEach(dataKey => { this.objects[index][dataKey] = data.dataKey } } 但是,当我只想更新数组中单个对象中的数据时,这似乎是一个奇怪的解决方法。 这样做: updateObjectbyIdx (index, data) { this.objects[index] = { ...this.objects[index], ...data} } 您还更新了对该对象的引用,并且由于父组件使用该对象,它将重新渲染。 您可以这样做 Object.assign:,而不是最后一个解决方案(实际上,这是正确且很好的) updateObjectbyIdx (index, data) { Object.assign(this.objects[index], data) } 这将保留引用并仅更新属性。只需记住深层嵌套的属性、对象、数组即可。要处理它们,您最好使用某种 mergeDeep 函数,Object.assign 不会进行合并,它基本上会覆盖您在自定义循环中所做的所有内容。

回答 1 投票 0

Testdome Reactjs GroceryApp 组件问题

您有一个 GroceryApp 组件,它接收一个产品列表,每个产品都有名称和投票。应用程序应呈现一个无序列表,其中每个产品都有一个列表项。 产品可以投票...

回答 1 投票 0

更新到 Expo SDK 51 后我的项目崩溃了

将 Expo 项目更新到 SDK 51 后,当我使用 Stripe 购买产品时,我的项目崩溃了。 它只是崩溃,没有任何错误。 我尝试更新所有模块。 没有任何信息...

回答 2 投票 0

Vercel 的专用路由问题

我需要你的帮助。我的 React 应用程序中有一个 React Router Dom(6.10.0)。它在我的本地主机上运行良好,但是当我将其部署在 Vercel 上时,我无法访问私有路由,而非私有页面(Welco...

回答 1 投票 0

如何在 Next.js / React.js 中实现 Highcharts 的动态导出大小

我正在使用 Next.js 和 Highcharts 开发一个项目,我需要为 Highcharts 导出实现动态导出大小。本质上,我想允许用户导出不同尺寸的图表,s...

回答 1 投票 0

Formik 不会更新状态给定的值

我正在使用 Metronic React Template 并自定义表单。我的一些表单字段的值被保存在一个状态中。当我提交带有填充输入的表单时,这些值将作为空字符串返回...

回答 1 投票 0

处理 React 类组件内部大量逻辑的最佳方法

上下文 我们有一个(非常庞大的)应用程序,有时其中的文件包含 1000 多行代码。使这些文件变大的原因是某些方法的逻辑。我们的

回答 2 投票 0

我的下拉菜单占用了 100vw,但在窗口右侧创建了水平溢出

我正在开发一个自定义导航栏。菜单无法正确打开。它有 100vw,但转到窗口右侧会创建水平滚动。我有 2 个组件导航栏和菜单。菜单

回答 1 投票 0

Jodit 编辑器下拉菜单中的自定义字体预览不起作用

我在反应中的joditeditor组件中添加了自定义字体,但自定义字体不会在下拉列表中显示字体预览 使用效果(()=> { 常量配置设置 = { 控制:...

回答 1 投票 0

如何在滚动页面时关闭以前的手风琴并到达新的手风琴?

我使用的是手风琴材质-mui。首先,所有手风琴都打开。当我滚动页面并到达第二个手风琴时,我想关闭第一个手风琴,当我到达第三个时

回答 1 投票 0

ios 肖像照片在上传时会翻转为风景

我们有一个用 React 开发的 B2B 市场平台。用户可以提交待售车辆。 我们在处理从 IOS 拍摄的肖像照片时遇到问题。实际上,当用户从他的画廊拍摄照片或

回答 1 投票 0

React 应用不显示 ASP.NET Core / EF Core 数据库数据,使用 Cors 访问它们(Neil Cummings 关于 REACT 的教程)

React 前端位于 3000,我的 ASP.NET Core 后端位于端口 5000。React 部分具有产品定义和从 localhost:5000/api 获取数据,并通过 AddProduct 函数中的 prevState 访问数据。

回答 1 投票 0

如何修复 React 中的对象作为 React 子对象无效(找到:带有键 {} 的对象)

我对反应还很陌生,我正在构建一个网站,如果我的用户没有足够的范围来访问它,我想将页面保持私有。我有以下代码: 更新:我尝试设置

回答 2 投票 0

Material-UI TextField Outline Label 在条件渲染时与边框重叠

https://codesandbox.io/s/material-demo-04y5b 重现步骤: 点击“确认”或“有代码吗?”触发不同形式的条件渲染。 单击“确认码”文本字段。 不...

回答 5 投票 0

使用带有空依赖数组和条件的`useEffect`有什么区别?

根据 React 文档中概述的文章:你可能不需要效果,他们解释说只应执行一次的逻辑应包装在 init 子句中。 IE。 // 将运行 init ...

回答 1 投票 0

在 React 中的功能组件上使用 try-catch 块是反模式吗?

我知道在分支 UI 逻辑时应该使用 if-else。但我很好奇在功能组件或渲染函数中使用 try-catch 块时会发生什么,如下所示?这是反模式吗? 功能...

回答 1 投票 0

将manualPersist设置为true时组件不会渲染

来自 redux-persist v6.0.0 文档: persistStore(store, [config, callback]) 如果您想避免在调用 persistStore 后立即开始持久化,请设置选项 manualPersist。前...

回答 1 投票 0

在 React 中显示的条件渲染

我想在两个条件满足后显示徽章/文本。 第一个条件是,如果没有可用的 openSopts,则显示 SOLD OUT 徽章/文本,如果不满足此条件,则

回答 4 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.