我很想开始学习Angular2,但问题是我不喜欢使用TypeScript。我想使用纯JavaScript来做。但似乎没有为此提供适当文档。您有任何推荐的链接可以开始吗?第二个问题是:学习JavaScript版的Angular是否真的值得,因为它没有相应的文档?还是应该接受TypeScript?
我很想开始学习Angular2,但问题是我不喜欢使用TypeScript。我想使用纯JavaScript来做。但似乎没有为此提供适当文档。您有任何推荐的链接可以开始吗?第二个问题是:学习JavaScript版的Angular是否真的值得,因为它没有相应的文档?还是应该接受TypeScript?
或者我应该采用TypeScript?
是的。
实际上,你会发现几乎没有任何关于Angular的代码示例、Gist、教程或博客文章是不使用TypeScript的。因为95%或者更多的Angular用户都在使用TypeScript。这是因为它带来了很多好处,而且缺点很少。你应该重新审视一下自己不喜欢使用TypeScript的原因。是的,有一个学习曲线,但这也是对你未来的投资,从第一天开始就会以提高生产力和代码质量的形式回报。
唯一真正令人信服的试图从JavaScript中使用Angular的原因是,如果你想要从非Angular应用程序中使用某些Angular功能,例如DI。
我在这里添加另一个答案,提供一些真正的技术要点。
使用JavaScript而不是TypeScript运行某些内容是可能的。但是,你将面临两个主要问题,这意味着你不应该这样做:
你需要进行大量配置。这里有一篇很好的文章解释了如何做到这一点,但你必须进行一些更改才能让它与最新版本的babel和webpack一起工作,这并不容易。
你永远无法将生产捆绑包缩小到合理的大小。这是因为你不会使用angular-cli来进行构建,而是纯粹使用webpack。angular-cli似乎会使用webpack和typescript编译器进行一些智能构建,以输出更小的生产捆绑包。 仅出于这个原因,这是一个非启动项。我设法获得的hello world应用程序的最小捆绑包超过800kB
。使用typescript构建的等效应用程序约为140kB
。
我认为,Angular团队应该更新他们的文档,指出这一点。