react.js 怎么为已有的元素绑定事件?

2019-12-20 15:28:36 +08:00
 51300520
现在我有< p>一段文章< /p >,这个是直接写在 html 标签里,不是用 react render 出来的。 现在点击要求背景变色,用 jquery 做我很清楚,用 react 怎么做?这段<p>标签一开始就有内容内容,不是 react render 出来的。

教程上都是还是空元素的时候就用 react render 出来,那样我知道怎么弄,这种一开始不是用 react render 出来而是直接 html 代码写出来的元素怎么用 react 事件处理?
1492 次点击
所在节点    问与答
9 条回复
rioshikelong121
2019-12-20 15:54:44 +08:00
在合适的 lifeCycle 里面直接使用原生方法即可。
SakuraKuma
2019-12-20 15:58:22 +08:00
事件是会冒泡的。。
rockjike
2019-12-20 16:00:55 +08:00
1 楼+1
compoentDidMount() {
const content = document.getElementById('XXX')
content.style.background = "#XXX"
}
cuvii
2019-12-20 16:06:50 +08:00
原生方法+1
CODEWEA
2019-12-20 17:35:55 +08:00
没必要用 react 不是脱裤子放屁吗
Rubicker666
2019-12-20 17:38:30 +08:00
React.js 本质还是 JS,所以原生怎么用 React.js 中也可以用。
nnnToTnnn
2019-12-20 17:41:43 +08:00
这不符合 React 的设计思想吧?

如果真的要这样做。

不如

npm install jquery

$("id").css("background","#xxx")

如果是 React.js

jquery 怎么玩就怎么玩,react 本身就是 js
nnnToTnnn
2019-12-20 17:43:28 +08:00
React 不是一切皆为组件么? < p>一段文章< /p >不是组件 render 的出来的,而是 eval ? 或者其他方式进行添加进去的话,这种就需要采用原始的方式进行操作了
nnnToTnnn
2019-12-20 17:44:41 +08:00
一般 state 和 props 就可以解决所有的问题了。 加上动态组件基本上不存在你说的那种情况

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/630864

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX