reactjs 相关问题

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

有没有办法从 ReactJS 的单个组件中删除 Tailwind 中的 @base 样式?

我正在尝试使用 Draft-js 渲染帖子创建的元素,它是一个原始 html。到目前为止,我只能使用 iframe 来做到这一点,但是,它看起来不太好,而使用angerouslySetInnerHTML 则可以......

回答 1 投票 0

在给定 id 值的 React Router 的子级之一中匹配嵌套路由

想象我有以下路线: 常量路由= [{ id:“1”, 路径:“动物”, 孩子们: [{ id:“1.1”, 路径:“鸟”, 孩子们: [{ ...

回答 1 投票 0

React Chart js 在缩放时会破坏标签

我们目前有针对小屏幕的缩放规则。它将缩放至 80%。 但这破坏了 Chart.js 中的饼图。 当我们使用大屏幕,页面缩放为100%时,我们可以选择...

回答 1 投票 0

每当我尝试使用 useContext 钩子来使用调度时,我总是收到“未捕获的类型错误:调度不是函数”

所以我一直在学习使用 useContext 和 useReducer 钩子与 action/dispatch ,每当我尝试从任何组件使用 dipatch 函数时,它都会抛出“Uncaught TypeError:dispatch is ...

回答 2 投票 0

带有 .srt 文件的反应播放器视频字幕

我有一个带有 Next js 的 React/Typescript 项目 有一个模式功能使用“react-player”来显示视频。我已经让视频和模式正常工作,但我想使用 .srt 文件添加字幕。 ...

回答 2 投票 0

我不断收到“dataIndex 不可分配”错误至

我对此真的很陌生,并且我的代码上的一切看起来都很好,但我不断收到“Type '{ dataIndex:string; title:string; defaultFilteredValue:any; filterIcon:Element;

回答 1 投票 0

未处理的拒绝(TypeError):无法读取未定义的属性“amount”

使用 React 制作电子商务应用程序。这是一个“handleSubmit”函数,每次我尝试结帐时都会返回错误。 我已导入“db”并声明“

回答 3 投票 0

切换到Next js中的路由后,如果不进行硬刷新,React状态无法更新

我正在使用 Next 14.1.4 和 React 18。 似乎不进行硬刷新就不可能更新状态。状态的值显然是缓存在客户端的,没有什么可以帮助摆脱它。 期间

回答 1 投票 0

React - 具有上下文提供者的依赖数组

假设我有这样的东西: 从 'react' 导入 React, { createContext, useState, useContext, ReactNode }; 接口 ChannelProviderProps { 孩子们:ReactNode; } 常量 ChannelContext =

回答 1 投票 0

标签“iframe”只能显示为标签“noscript”的后代。您是说“amp-iframe”吗:NextJs

我们面临 AMP 错误问题,请联系我 错误标签“iframe”只能显示为标签“noscript”的后代。您的意思是“amp-iframe”吗 AMP 中不允许自定义 JavaScript。 导出常量

回答 1 投票 0

GetByRole 在反应测试库中返回一些元素

给定匹配多个元素的 getByRole 选择器。它会返回什么? https://testing-library.com/docs/queries/byrole/ getByRole('按钮') 给定匹配多个元素的 getByRole 选择器。它会返回什么? https://testing-library.com/docs/queries/byrole/ getByRole('button') <body> <main> <button>Open dialog</button> </main> <div role="dialog"> <button>Close dialog</button> </div> </body> 会返回什么? 元素很少,有匹配的元素还是抛出错误? https://testing-library.com/docs/queries/byrole/ 根据文档, getBy 方法“返回查询的匹配节点,如果没有元素匹配或如果找到多个匹配项,则抛出描述性错误”

回答 1 投票 0

如何修复 Next.js 错误“取消渲染路由”?

我正在尝试链接到 div id,但收到此错误:错误:取消渲染路由 这似乎是双重链接的问题。 我已经在使用 useRouter 推送到 [slug],因为 NextLink 是...

回答 2 投票 0

错误发生意外错误:“https://registry.yarnpkg.com/react: getaddrinfo EAI_AGAINregistry.yarnpkg.comregistry.yarnpkg.com:443”

纱线添加v1.3.2 [1/4] 正在解析包... 错误 发生意外错误:“https://registry.yarnpkg.com/react: getaddrinfo EAI_AGAINregistry.yarnpkg.comregistry.yarnpkg.com:443”。 信息 如果您

回答 5 投票 0

在 onBlur 模式下如何使用 React Hook Form 提交?

这不像这个问题所问的。 基本上,我有一个表单,我想在字段更改时自动提交。 IE。我不需要提交按钮。 所以,有了这个: 常量{ 形式St...

回答 2 投票 0

错误:定义键“process.env.CommonProgramFiles(x86)”包含无效标识符“CommonProgramFiles(x86)”

之前我收到错误 TS1343: The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', ' node16' 或 'nodenext'。当我...

回答 1 投票 0

在触发 onClick 事件时无法将焦点设置在 Material UI 中的工具提示组件的内容上,但可以在触发 onKeyPress 事件时

我在自定义的 TooltipComponent 中使用 MUI 中的 Tooltip 组件。 TooltipComponent 的工作方式与 Dialog 类似:用户可以在单击(而不是悬停)元素(div 与...

回答 3 投票 0

GetByRole 在反应测试中返回一些元素

给定匹配多个元素的 getByRole 选择器。它会返回什么? https://testing-library.com/docs/queries/byrole/ getByRole('按钮') 给定匹配多个元素的 getByRole 选择器。它会返回什么? https://testing-library.com/docs/queries/byrole/ getByRole('button') <body> <main> <button>Open dialog</button> </main> <div role="dialog"> <button>Close dialog</button> </div> </body> 会返回什么? 元素很少,有匹配的元素还是抛出错误? https://testing-library.com/docs/queries/byrole/ BCBGeneration g cng kuch nc nc

回答 1 投票 0

顶级等待在构建中给出错误,但在开发中工作

我的代码在运行 npm run dev 时可以工作,但是当我构建它时,它会出现此错误。根据文档,我需要在 tsconfig.json 中将目标设置为 ES2017 或更高版本,但我正在使用 ESNEXT,我相信它是

回答 2 投票 0

表单字段元素应具有 id 或 name 属性

以下是我的代码。 以下是我的代码。 <TextInput label="Password" placeholder="Enter your password" password={true} //password passed to enable view password option value={password} handelChange={(e) => setPassword(e.target.value)} /> 我收到以下错误消息; 表单字段元素既没有 id 也没有 name 属性。这可能会阻止浏览器正确自动填写表单。 要解决此问题,请将唯一的 ID 或名称属性添加到表单字段。这不是严格需要的,但即使您在同一元素上有自动完成属性,仍然建议这样做。 我尝试了以下方法,但它仍然给我一个错误; <label htmlFor="password">Password</label> <TextInput id="password" label="Password" placeholder="Enter your password" password={true} value={password} onChange={(e) => setPassword(e.target.value)} /> 该问题与缺少 ID 和名称属性的表单字段有关,这可能会阻止浏览器正确自动填写表单。 如何解决这个问题是为你的表单元素添加一个 id 或名称,我假设你的 TextInput 组件有它们。 您不应通过 TextInput 组件传递此 ID 或名称,您应该编辑 TextInput 组件返回的表单元素。 我的建议是使用这种语法: <form> <input type="text" name="input-text1" /> <input type="text" name="input-text2" /> <input type="submit" name="input-submit" /> </form>

回答 1 投票 0

React,手动移动 html/dom 的元素到不同的容器中

我在我的react代码中实现了tinymce,但它生成了一个与此类似的html ... 我在我的react代码中实现了tinymce,但它生成了一个与此类似的html <html> <body> <div id="root"> <div class="StyledGrommet-sc-xxx" > </div> </div> <div class="tox tox-silver-sink tox-tinymce-aux" style="position:relative;"></div> </body> </html> 但是这段代码给我带来了一些溢出问题,因为这个类,StyledGrommet-sc-xxx,由于w/e原因我无法更改。 理想的解决方案是 React 会像这样渲染 html,但由于某种原因,tinymce 决定将其渲染在 root 之外(它是一个浮动工具栏,是 tinymce 组件的一部分) <html> <body> <div id="root"> <div class="StyledGrommet-sc-xxx" > </div> <div class="tox tox-silver-sink tox-tinymce-aux" style="position:relative;"></div> </div> </body> </html> 我正在考虑有人在 useEffect 中操纵 dom 将其附加到那里,但到目前为止我还没有能够这样做。 这是组件(简化) export const Editor = ({ value, onChange }: Props) => { const editorRef = useRef<EditorType>(null); const [showSymbolModal, setShowSymbolModal] = useState(false); const [showImageModal, setShowImageModal] = useState(false); const [showIframeModal, setShowIframeModal] = useState(false); const [showHTMLModal, setShowHTMLModal] = useState(false); const onAddSymbol = (code: string) => { }; const onAddImage = (file: File) => { }; const onAddIframe = (iframe: string) => { editorRef.current.execCommand(IFRAME_ADD_COMMAND, true, iframe); setShowIframeModal(false); }; const onUpdateHTML = (html: string) => { editorRef.current.setContent(html); setShowHTMLModal(false); }; return ( <> {showImageModal && ( <UploadImageModal onImport={onAddImage} onCancel={() => { setShowImageModal(false); }} /> )} {showSymbolModal && ( <AddSymbolModal onAddSymbol={onAddSymbol} onCancel={() => { setShowSymbolModal(false); }} /> )} {showIframeModal && ( <AddIframeModal onAddIframe={onAddIframe} onCancel={() => setShowIframeModal(false)} /> )} {showHTMLModal && ( <HTMLModal html={editorRef.current.getContent()} onUpdate={onUpdateHTML} onCancel={() => { setShowHTMLModal(false); }} /> )} <Editor onEditorChange={(...props) => { console.log(props); }} onInit={(evt, editor) => { editorRef.current = editor; editor.addCommand("open_chars_dialog", () => { setShowSymbolModal(true); }); editor.addCommand(IMAGE_BUTTON_COMMAND, () => { setShowImageModal(true); }); editor.addCommand(IFRAME_BUTTON_COMMAND, () => { setShowIframeModal(true); }); editor.addCommand(HTML_BUTTON_COMMAND, () => { setShowHTMLModal(true); }); editor.ui.registry.addButton("parapraph-button", { text: "parapraph", onAction: api => { editor.formatter.apply("p"); } }); }} initialValue={value} init={{ height: 500, menubar: false, object_resizing: false, browser_spellcheck: true, plugins: [ "link", "lists", ], branding: false, contextmenu: false, formats: {}, toolbar: "paragraphs | bold italic underline strikethrough | subscript superscript | bullist numlist | link unlink | undo redo", toolbar_groups: { paragraphs: { icon: "blocks", items: "parapraph-button h2 h3 h4 h5 h6" } } }} /> </> ); }; const addImageToEditor = async (file: File, editor: EditorType) => { }; 我正在考虑做这样的事情 useEffect(() => { const rootDiv = document.getElementById("root"); const editorDiv = document.querySelector(".tox"); console.log(rootDiv) console.log(editorDiv) if (rootDiv && editorDiv) { rootDiv.appendChild(editorDiv); } }, []); 但是好像没效果 很抱歉撞到这个旧线程,但我遇到了同样的问题,并找到了适合我的解决方案:https://github.com/tinymce/tinymce-react/issues/186#issuecomment-730083282 您必须将以下内容添加到 TinyMCE 的 init 组件上的 Editor 属性中: ... menubar: false, setup: function(editor) { editor.on('PostRender', function() { var container = editor.getContainer(); var uiContainer = document.querySelector('.tox.tox-tinymce-aux'); if (uiContainer === null) return; container?.parentNode?.appendChild(uiContainer); }); } ... 不确定它是否仍然对您有用,但希望对其他遇到此问题的人也有用😄

回答 1 投票 0

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