gpt4 book ai didi

reactjs - 使用一个大型 React 组件有哪些缺点?

转载 作者:行者123 更新时间:2023-12-03 13:56:06 25 4
gpt4 key购买 nike

使用一个大型 React 组件有哪些缺点?

我对 webpack、browserify、AngularJS、ES6、NPM 和其他类似的 Web 框架有很深的使用经验。我是 React 新手。

我想在 React 中创建一个单页应用程序。我不想或不需要测试。我不需要团队 friend 来工作。我只需要让产品开发尽可能快。让事情顺利进行。你可以称之为 MVP。你可以称之为 type lessm,或者智能开发。如果将来一切顺利的话我可以考虑重构该项目。我是唯一从事此工作的开发人员。我不担心性能问题(如果只是几毫秒)

问题是:所有文章都说要制作尽可能多且小的 React 组件。在单独的文件中。您可以看到 React-Starter-Kit。它是巨大的。

你可以看到每个组件都是一个单独的文件。有一个巨大的 webpack.config.js 文件。每个组件都会导入许多其他东西。如果我也想要 Redux,我需要导入存储,并在每个组件上进行 connect 。我想采取不同的方法。我想使用 React 和 Redux。但只使用一个组件。每个内部元素都可以调度或执行事件。

future 还有什么问题是我没有想到的吗?

<小时/>

HTML:

<html><head><body></body></html>

JavaScript:

App=React.createClass(function(){
getInitialState:function(){
return {
openMore:'block'
}
},
openMore:function(){
this.setState({openMore:'visible'})
},
render:function(){
return (
<div>
I want to put all the HTML of the app
<span>
In one component that do everything.
<button onClick={this.openMore}>More Info</button>
<span> This way I beleive I will need to type less for development</span>
<b style={{display:this.getState().openMore}}>What are the disadvance of this?</b>
</span>
</div>
)
}
})
ReactDOM.render(App,document.getElementsByTagName('body')[0])

最佳答案

缺点有很多。我将尝试根据我所面对和观察到的情况列出它们:-

  1. React 的构建理念是将页面分解为组件,所以,是的,将页面分解为小组件越多,它就越容易使用。
  2. 通常很容易跟踪代码。
  3. 其可扩展性
  4. 一个组件不会破坏其他组件。
  5. 仅当指定组件被隔离时,才会进行重新渲染。如果您将所有内容都放在一个组件中,则渲染会使整个组件再次加载,从而降低效率。
  6. 更难测试
  7. 在传递操作然后连接到存储时很难与 redux 一起使用。
  8. 您的组件应该只执行一项工作。
  9. 无法将组件分解为展示组件和容器组件,因此无法充分利用 redux 的潜力。
  10. 无法使用 webpack 的代码溢出功能,该功能会由于部分代码加载而提高页面速度。

这些是我个人遇到的一些事情。接下来,进入 webpack 配置。我几乎没有配置超过 100 行的 webpack 文件,相信我,这 100 行会让你的生活变得更轻松。事实上,基本配置只需 10-15 行即可生成您的包。

现在,谈到 future 的问题,是的,以下将会是问题:-

  1. 难以扩大规模。
  2. 难以测试
  3. 没有充分利用库的潜力
  4. 由于单体行为,难以管理组件。

希望对你有帮助!!!

关于reactjs - 使用一个大型 React 组件有哪些缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39391195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com