2

我刚刚开始编写一个 Web 应用程序,我认为使用 Dart 和 Angular.dart 会很有趣。我用过一点 Dart 和 Angular.js,我喜欢它们。

不过,我希望该应用程序实际上可以被大多数互联网用户使用,而且似乎 Angular.dart(或至少一些 Angular.dart)依赖于影子 dom。据我所知,Chrome 是唯一支持 shadow dom 的主流浏览器,即使 Firefox、IE 和 Safari 都实现了它,也可能是几年后的事。

我实际上尝试使用 dart2js 编译器从 Angular.dart 教程运行第 3 章,它制作的页面在 Chrome 中似乎运行良好,但在 Firefox 和 IE11 中失败。

我这里的评价准确吗?Angular.dart 至少要在几年后才能在 Chrome 之外使用?Angular.dart 是否有计划允许替代它对 shadow dom 的依赖?

我担心我会被迫在 Angular.js(几乎没有那么有趣)和 Dart 之间做出选择,也许只有 Polymer.dart(结构不那么好/容易)。

4

3 回答 3

4

在大多数情况下,在不支持它的浏览器上使用 Shadow DOM 不是问题。有一个polyfill可以为每个现代浏览器添加对 Shadow DOM 的支持。

我不确定 Angular.dart 的状态,但至少 Polymer.dart 目前自动包含 Shadow DOM polyfill。

使用 Shadow DOM 根本不应该是个问题。

于 2013-11-17T09:39:25.137 回答
2

Shadow DOM 在某些移动浏览器上会成为问题。Shadow DOM 补丁/使用 JavaScript 解决的问题(为没有内置它的浏览器提供功能)还没有完全存在,并且经常受到错误的影响。我什至不得不使用它的调试版本一段时间。

虽然我在生产中使用 Angular.dart(因此也使用 Shadow DOM),但如果可以避免的话,我不推荐它。目前。虽然在未来会非常棒。

所以,实际上,我确实认为这是一个问题。Polymer 和现在的 Angular.dart 正在展望未来,这很好……但除非你真的可以控制一些事情,否则不应该使用它们。如果您可以构建一个您知道人们只使用特定浏览器的应用程序,那么您就不会有问题。否则,你肯定会的。在某一点。

于 2014-03-12T15:56:37.613 回答
0

您必须考虑 shadowDOM 中样式内容的差异。根据您的要求,这可能是优点或缺点。

样式元素指南

于 2013-12-11T07:35:53.823 回答