Angular 2和Dart有什么区别?Angular 2 TS和Angular 2 Dart有什么区别?
我读过你可以使用AngularJS和dart一起使用。那是什么意思?他们都不是JavaScript的替代品吗?
Angular 2和Dart有什么区别?Angular 2 TS和Angular 2 Dart有什么区别?
我读过你可以使用AngularJS和dart一起使用。那是什么意思?他们都不是JavaScript的替代品吗?
更新(2018/01)
虽然模板语法还是相当类似,其他像配置DI和注册组件,并生命周期回调是发散越来越多的角镖和TS口味之间因为这两个版本在2016年5月份分开独立开发。
原始
打字稿是JavaScript的一个超集,它只是允许以更“理智”的方式来使用JS。
Dart离它自己的语言语义更远离JavaScript。飞镖可以转换为JS虽然。
哪种支持的语言适合您,主要取决于您的要求或个人偏好(或您的管理层)。
[prop]="value"`
[attr.attrName]="value"
prop="{{value}}"`
attr.attrName="{{value}}"
(event)="..."
<div *ngFor="...">
一个不同之处,想到模板绑定语法几乎是相同的是,TS/JS版本得到了<ng-container>
这不是(还)可在Dart中找到。 @ContentChildren()
表现有点不同。
[ngClass]="{cName: value}
将导致错误在达特如果cName
不是在当前范围内的已知标识符而在JS/TS cName
将只是字面上使用。
[attr.someAttr]="someProp ?? true" // Dart only
Angular2达特没有NgModule
这主要是引入了延迟加载与路由器。 Dart有它自己的延迟加载故事,不需要NgModule
TS/JS支持不同的平台,如服务器端呈现,WebWorker。 Angular2 Dart目前不提供这些。
目前正在进行的工作使Darts自己的HTML抽象dart:html
与服务器端代码兼容,这可能会允许服务器端渲染。 WebWorkers可能最终也会支持,但采用与TS/JS不同的方式。
对于Dart,没有动态平台。在JS/TS中,支持在运行时编译组件。这在Dart中不受支持,它可能永远不会。
飞镖似乎做一个好一点的AOT与树摇动输出尺寸和性能(不完全确定 - 需要基准)
飞镖都有它自己构建的故事,这部分作品比JS完全不同/ TS。
飞镖DOM抽象层dart:html
包含了JS/TS需要polyfills的不同浏览器的很多抽象。
Angular不是JavaScript的替代品,它是构建Web应用程序的框架。 Angular有3种语言版本,适用于JavaScript,Typescript和Dart。
Typescript和Dart都可以被描述为JavaScript的“替代品”,例如人们可以在其中编程代替JavaScript来构建Web应用程序。
Dart也可用于非Web应用程序编程,其中可能会使用Java,Ruby或Python。
还有一个正在开发的Dart移动应用程序框架。
他们不是JavaScript更换。 AngularJS是一个JavaScript框架,Dart类似于Typescript和JSX,它的JavaScript扩展,我不会称之为替代品。毕竟飞镖被转换成javascript。 – Mox
@Mox飞镖也是一个框架吗?如果是这样,两个框架如何一起使用? – Horay