已编辑:我更正了注入代码的方式,它与 MDX 无关,它只是普通的 html
我有html
插入到我的 React 页面的代码
dangerouslySetInnerHTML={{ __html: myContent }}
之前,我添加了一些组件到myContent
一个 simpleregex.replace()
中,我用一个转换为纯 html 的 React 组件替换了一些纯文本
ReactDOMServer.renderToString(<Input type="text" ref={inputRef}/>)
*<Input>
是一个样式化的组件,它返回一个<input>
元素
但是,我无法访问inputRef
,也无法访问任何onClick
或onChange
作品
我确实认为要启用这些事件侦听器,我应该hydrate
使用组件吗?真的不知道它在这里如何应用,也不知道是否hydrate
应该在这个用户案例中应用(不涉及服务器)
所以目标是我可以在<input>
更改时进行交互,但到目前为止它绝对是我无法访问的静态 html
我能做什么?
最后,我添加了一个<input id="blah"...
并使用 vanilla JavaScript 访问它,没有任何明显的麻烦