Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是谷歌';是否有一个功能齐全的前端框架来替代或补充其他前端框架?_Javascript_Angularjs_Frameworks_Polymer - Fatal编程技术网

Javascript 是谷歌';是否有一个功能齐全的前端框架来替代或补充其他前端框架?

Javascript 是谷歌';是否有一个功能齐全的前端框架来替代或补充其他前端框架?,javascript,angularjs,frameworks,polymer,Javascript,Angularjs,Frameworks,Polymer,问题在于AngularJS、BackboneJS、EmberJS和其他框架 我必须将一个项目从php翻译成javascript,并且我必须决定是否要使用: 安格拉斯 聚合物 它们的组合 我更喜欢使用聚合物,因为我喜欢它 然而,我缺少(并纠正我的错误)做出以下决定的能力: 视图及其之间的链接(如安圭拉) 控制器 我知道如何构建我的应用程序取决于我的结构,但angularjs似乎有一个用于构建mvc应用程序的预定义结构 因此,我想知道:如果您想构建一个结构良好的web应用程序,Polymer是Ang

问题在于AngularJS、BackboneJS、EmberJS和其他框架

我必须将一个项目从php翻译成javascript,并且我必须决定是否要使用:

  • 安格拉斯
  • 聚合物
  • 它们的组合
  • 我更喜欢使用聚合物,因为我喜欢它

    然而,我缺少(并纠正我的错误)做出以下决定的能力:

  • 视图及其之间的链接(如安圭拉)
  • 控制器
  • 我知道如何构建我的应用程序取决于我的结构,但angularjs似乎有一个用于构建mvc应用程序的预定义结构

    因此,我想知道:如果您想构建一个结构良好的web应用程序,Polymer是Angular的替代品,还是Polymer的补充库将与其他现有框架一起使用

    编辑2014年9月21日 没有人真正回答了我最满意的问题,因此我把它标记为尚未回答。许多人说这只是“视情况而定”。但没有人能够详细说明,具体取决于什么

    关于应用程序的复杂性?关于应用程序的需求?聚合物适合哪些需求?它不适合哪些需求?这些就是我一直在寻找的答案

    有人说它可以用作前端框架。有人说那只是一个图书馆,也有人说“是或不是”。不幸的是,答案相当混乱

    我希望有一个正式的答案,但我告诉你我的感受是什么。我相信它是一种替代品,但聚合物还没有达到其他框架需要的结构。也许这是有意的,也许这只是一个未实现的成熟度问题,因为这个框架是新的

    我希望创建者能解释一下,什么时候最好使用AngularJS,什么时候应该使用Polymer来构建大型可伸缩的web应用程序

    编辑2015年8月15日

    聚合物1.0已经过时了。事实证明,聚合物并不是一个正式的框架,它应该以一种与其他前端框架完全相同的方式工作。
    聚合物几乎是全功能的。 例如,目前它缺少布线,但这并不意味着你不能用聚合物做到这一点

    现在有了

    在Dart中,由于类型不同,依赖注入也适用于聚合物。如果在Dart中是可能的,那么在JS中也是可能的,因为Dart传输到JS。不过,普通JS中的DI可能更麻烦

    在这个包中(Dart)
    我使Angular.dart使用的布线和DI包可用于聚合物。Polymer.js也有路由包可用。

    我做了一些路由器演示。“缺少的部分”实际上取决于您正在构建的应用程序的类型


    我将其用作两个方面,一是作为在另一个框架中编写的应用程序的增强,二是作为完整框架本身,它负责页面上的每个元素

    我真的很喜欢Polymer的一切,所以我很高兴在整个应用程序中使用它,甚至构建了我自己的路由器。如果你有一个现有的应用程序,我建议你将脚趾浸入水中,因为聚合物可以很好地与其他应用程序混合,看看它是否符合你的喜好。

    来自: “无框架或框架兼容 用元素构建应用程序,或在外部框架中连接以处理业务逻辑。这取决于您!”

    更新: 被称为碳元素的元素似乎属于:

    • 使用聚合物和web组件的基于组件的体系结构
    • 使用应用程序布局组件进行响应性设计
    • 使用元件的模块化布线
    • 通过
      本地化,谷歌宣布了一套新的“聚合物惯用和面向框架的”元素,暂定名为碳元素

      关于以下方面的较长tjsavage回答中的一些引用: “诀窍在于将web平台视为一个应用程序框架,…该库与web组件模型的关系就像碳元素与将web平台本身用作应用程序框架的关系一样:自以为是的rails使其更易于理解和实现。”


      “Angular 2将提供一种结构化应用程序的方法,它使用Angular的观点来构建一个好的应用程序结构。carbon elements将提供一种不同的结构化应用程序的方法,更直接地使用web平台本身提供的结构基础。”让我再试一次:

      web组件(以及聚合物)背后的关键是,它们是自包含的。你在某处有一个web组件,你导入它,然后(如果你幸运的话)它就可以工作,不管它来自哪里。web组件不会干扰其他组件。因此,像MVC这样的操作不是一项业务(尽管它提供了一种数据绑定机制),因为这属于将事情捆绑在一起的过程。这被认为是最佳实践,即通过创建新的元素来解决这类问题,这些元素创建并响应事件。当涉及到您编写的非可视web组件的模型时,这些组件没有/不需要模板。TodoMVC有一个(过时的)例子()


      因此Angular为您提供了一条路径,让您了解如何进行MVVM,而使用Polymer时如何在应用程序中进行“逻辑”则取决于您。IMHO Angular适用于更复杂、更封闭的应用程序,而Polymer适用于任何类型的应用程序,包括网络。如果你根本不编写应用程序,你甚至可以使用聚合物;)

      IMHO两者都是不同的东西,它们都是为了两个不同的目的。尽管它们提供了一些共同的特性,但数据绑定可以是其中之一

      聚合物