Angular,React和Blaze(客户端流星)之间的主要设计差异是什么?

时间:2013-05-23 20:58:52

标签: javascript design-patterns angularjs meteor

我已经看过Angular vs. React,而Meteor问题多次问过。在流星方面,这个问题的答案不可避免地解释了流星的范围如何更大(有DDP,部署,所有服务器端的东西,以及它提供的所有其他东西)。

我想将此问题仅限于Blaze引擎以及它们确实有些重叠的事情,尤其是在编写或构建客户端代码方面可能提供其他功能和/或功能时。

  • 他们在哪里相互补充? (例如https://github.com/lvbreda/Meteor_angularjs带来的内容)
  • 假设上面有一些优点,如果使用纯流星,你如何补偿呢?
  • 鉴于angular鼓励客户端对MVC进行相当严格的代码分离,应该如何在meteor中为客户端构建良好的代码以遵循其MVVM模式? (它是否仅仅来自于拥有模板,客户端模块和模型)

2 个答案:

答案 0 :(得分:19)

好的,据我所知,你问的是三个不同的问题:

  

他们在哪里互补? (例如https://github.com/lvbreda/Meteor_angularjs带来的内容)

AngularJS是一个完整的堆栈客户端框架,为前端开发带来了大量功能。

它带来了标准流星上面的表格:

  

假设上面有一些优点,如果使用纯流星,你如何补偿呢?

如果您使用的是纯流星,您可以使用几乎所有可能的客户端库,例如jQuery,或者您可以手动编写一些方便函数,如角形式验证。

  

鉴于angular鼓励客户端对MVC进行相当严格的代码分离,应该如何在meteor中的客户端上构建良好的代码以遵循其MVVM模式? (它是否仅仅来自模板,客户端模块和模型)

构建代码的方法有很多种。流星并不是关于代码组织的观点。您可以使用http://docs.meteor.com/#structuringyourapp作为指导,但这实际上取决于您希望如何编码。可以将代码拆分为文件夹中的不同文件,或者将所有内容放入一个大文件中。对于非常小的应用,我更喜欢将所有内容保存在一个文件中

我喜欢将我的代码分成两个文件夹:

  • 客户端文件夹(视图和资产等子文件夹有时是一个很好的选择)
  • 服务器端的文件夹

如果您正在寻找一个好的做法,那么您还可以查看http://telesc.pe/源代码:https://github.com/SachaG/Telescope

答案 1 :(得分:6)

Abigail Watson在她的流星食谱中写了一篇关于Meteor如何与其他MVC框架相关的一个很好的总结:

  

https://github.com/awatson1978/meteor-cookbook

向下滚动到“模型,视图,控制器”部分。