入门Angular

Angular 是一个用 HTML 和 TypeScript 构建客户端应用的平台与框架。Angular 本身使用 TypeScript 写成的。它将核心功能和可选功能作为一组 TypeScript 库进行实现,你可以把它们导入你的应用中。

Angular 的基本构造块是 NgModule,它为组件提供了编译的上下文环境。NgModule 会把相关的代码收集到一些功能集中。Angular 应用就是由一组 NgModule 定义出的。应用至少会有一个用于引导应用的根模块,通常还会有很多特性模块

  • 组件定义视图。视图是一组可见的屏幕元素,Angular 可以根据你的程序逻辑和数据来选择和修改它们。每个应用都至少有一个根组件。

  • 组件使用服务。服务会提供那些与视图不直接相关的功能。服务提供商可以作为依赖注入到组件中,这能让你的代码更加模块化、可复用,而且高效。

组件和服务都是简单的类,这些类使用装饰器来标出它们的类型,并提供元数据以告知 Angular 该如何使用它们。

  • 组件类的元数据将组件类和一个用来定义视图的模板关联起来。模板把普通的 HTML 和指令绑定标记(markup)组合起来,这样 Angular 就可以在呈现 HTML 之前先修改这些 HTML。

  • 服务的元数据提供了一些信息,Angular 要用这些信息来让组件可以通过依赖注入(DI)使用该服务。

应用的组件通常会定义很多视图,并进行分级组织。 Angular 提供了 Router 服务来帮助你定义视图之间的导航路径。路由器提供了先进的浏览器内导航功能。
需要构建web单页应用(SPA)的情况下,考虑到Angular提供的路由服务,以及其组件化思想所提供的良好扩展性,Angular是一个不错的选择。
刚接触前端时接触过另一个叫做handlebar.js的库,它提供了html模板引擎功能,当时就感到很神奇,这个想法好啊,要是没有html模板引擎的话我们就只能写静态网页,即使是动态的话也会很复杂(需要自己拼凑出HTML,而且可维护性极差),然而在写动态网页的情况下,页面或页面的某一部分DOM是固定的,这个时候html模板引擎可以大展身手了。

回过头来看,其实Angular中的组件也采用了模板引擎的思想,将动态应用的开发大大简化了。当然Angular框架给我们提供的便利绝不仅模板引擎,事实上由于模板引擎的思想越来越流行,几乎所有框架都已采用,但是Angular有更多的灵活性(比如数据模型,它没有限定我们所使用的开发模式是MVP、MVVM还是MVC)。

猜你喜欢

转载自blog.csdn.net/buttonchan/article/details/79829313
今日推荐