Javascript 无状态和道具的React应用程序
我想知道它是否完全符合React原则。我制作了一个没有状态和道具的React应用程序。我只在componentDidMount中添加了纯javascript,例如Javascript 无状态和道具的React应用程序,javascript,reactjs,frontend,Javascript,Reactjs,Frontend,我想知道它是否完全符合React原则。我制作了一个没有状态和道具的React应用程序。我只在componentDidMount中添加了纯javascript,例如 componentDidMount(){ const first = document.getElementById('first'); const second = document.getElementById('second'); function funk(){ console.log(first.inn
componentDidMount(){
const first = document.getElementById('first');
const second = document.getElementById('second');
function funk(){
console.log(first.innerHTML);
second.innerHTML = "Arrr";
}
funk();
}
当然,这只是一个例子,我的应用程序要复杂得多。是和否 是,在某些情况下,您可以使用它来利用复杂的jQuery插件,将react集成为项目的一部分,等等 我知道有很多人反对这种方法,但我们也应该了解业务,如果不需要花费40-80小时自己编写代码就可以实现目标,那就去做吧 否,您不应该在组件生命周期方法中执行任何DOM操作,除非您非常擅长react并完全了解此库中的内部工作方式。
以这种方式更改DOM很可能会导致性能问题,因为您的组件将无法使用影子DOM,因此,您的组件在每次更改后都会执行DOM操作,并可能会降低应用程序的速度。是和否 是,在某些情况下,您可以使用它来利用复杂的jQuery插件,将react集成为项目的一部分,等等 我知道有很多人反对这种方法,但我们也应该了解业务,如果不需要花费40-80小时自己编写代码就可以实现目标,那就去做吧 否,您不应该在组件生命周期方法中执行任何DOM操作,除非您非常擅长react并完全了解此库中的内部工作方式。
以这种方式更改DOM很可能会导致性能问题,因为您的组件将无法使用影子DOM,因此,每次更改后,您的组件都会执行DOM操作,并可能会降低应用程序的速度。从技术上讲,您可以(如您所知)。
你应该这样做吗?一个又大又亮的不 通过这种直接针对
DOM
的方法,您忽略了react提供的大部分好处
如果您真的(真的)需要针对DOM
,您可以使用react。你可以从他们的作品中看出,它应该被谨慎使用: 不要过度使用参考文献
您的第一个倾向可能是使用refs“make” 在你的应用程序中发生“事情”。如果是这种情况,请花点时间 更批判性地思考未来国家应该归谁所有 组件层次结构。通常情况下,很明显 “拥有”状态在层次结构中处于较高级别。见 举个例子,举个例子
从技术上讲,您可以(您可能已经知道)。
你应该这样做吗?一个又大又亮的不 通过这种直接针对
DOM
的方法,您忽略了react提供的大部分好处
如果您真的(真的)需要针对DOM
,您可以使用react。你可以从他们的作品中看出,它应该被谨慎使用: 不要过度使用参考文献
您的第一个倾向可能是使用refs“make” 在你的应用程序中发生“事情”。如果是这种情况,请花点时间 更批判性地思考未来国家应该归谁所有 组件层次结构。通常情况下,很明显 “拥有”状态在层次结构中处于较高级别。见 举个例子,举个例子
你们绕过了react提供的大部分好处,为什么要使用react呢?它不符合React的原则。在极少数情况下,我认为直接DOM操作是必要的。谢谢!我重构了代码,现在一切都遵循React的原则你们绕过了react提供的大部分好处,为什么要使用react呢?它不符合React的原则。在极少数情况下,我认为直接DOM操作是必要的。谢谢!我重构了代码,现在一切都遵循React的原则