0

我对 Angular(和其他许多人一样)有性能问题。我只想将视图层更改为 reactjs 或 Mithril。我找到了 React js 的示例(例如http://www.bimeanalytics.com/engineering-blog/you-put-your-react-into-my-angular/),但没有找到 Mithril。任何人都可以就使用秘银作为角度视图与 Reactjs 的优缺点提出建议吗?谢谢!

4

2 回答 2

1

我不认为这里有一个客观的答案,作为一个秘银用户,我有自己的偏见,但这是我的想法。

就哲学而言,Mithril 和 React 非常相似:您编写视图函数来描述您的应用程序在任何给定时间应该如何看待。在渲染性能方面,我认为没有明显的赢家。有链接/博客文章说 Mithril 比 React 更快,反之亦然。

因此,我认为您应该关注的是:

1) 你更喜欢哪个 API?使用 React 你应该使用 JSX,以免你不得不对他们的文档进行逆向工程。Mithril 也只有一个生命周期钩子(视图函数),而 React 有几个(例如 shouldComponentUpdate)——你需要所有这些钩子吗?

2) 社区支持——React 显然是这里的赢家,而且存在与 Angular 集成的现有示例这一事实是一个胜利。

3) 兼容性 - React 中的 DOM 重绘/差异是在数据更改时完成的,就像 Angular 一样,但 Mithril 的重绘以用户交互为中心(例如点击、路由更改、ajax 请求)。您可以手动重绘,但这不太理想。我不知道 Mithril 是否适合 Angular 设置。

如果您决定使用 Mithril,我鼓励您使用 Google 组 ( https://groups.google.com/forum/#!forum/mithriljs ) 作为资源,或者至少报告您的经验。

于 2015-11-05T00:10:40.890 回答
0

Mithril 和 React 有很多相似之处。我已经使用了它们,这里有一些优点和缺点。

秘银

优点:它的加载时间非常快。这是因为它的模板首先被编译然后提供给浏览器。你可以用 JavaScript 编写秘银视图。小尺寸,良好的文档,不会强迫您进入预定义的结构。

缺点:小 API 可能使其不适合更大更复杂的项目。

反应JS

优点:React 的单向数据绑定意味着很容易看到你的 UI 更新的位置和方式,以及你需要在哪里进行更改。它还提供服务器端渲染、虚拟 dom 支持、良好的调试工具、易于编写测试、易于重用组件、通量架构模式和广泛的 SVG 支持等。

缺点:与 Mithril 相比,内存较重,不是一个完整的解决方案,因为它主要关注视图,需要学习新的语法等。

在我看来,React 总体上更可取。但是,如果你的应用程序不需要 React 提供的所有这些额外的东西,你应该使用 Mithril。

于 2017-11-10T21:15:13.083 回答