AngularJS2.0 hello world例子——引入这么多额外的依赖库真是很忧伤啊

简介:

初识Angular2

写一个Angular2的Hello World应用相当简单,分三步走:

1. 引入Angular2预定义类型

  1. import {Component,View,bootstrap} from "angular2/angular2";

import是ES6的关键字,用来从模块中引入类型定义。在这里,我们从angular2模块库中引入了三个类型: Component类、View类和bootstrap函数。

2. 实现一个Angular2组件

实现一个Angular2组件也很简单,定义一个类,然后给这个类添加注解:

  1. @Component({selector:"ez-app"})
  2. @View({template:"<h1>Hello,Angular2</h1>"})
  3. class EzApp{}

class也是ES6的关键字,用来定义一个类。@Component和@View都是给类EzApp附加的元信息, 被称为注解/Annotation。

@Component最重要的作用是通过selector属性(值为CSS选择符),指定这个组件渲染到哪个DOM对象上。 @View最重要的作用是通过template属性,指定渲染的模板。

3. 渲染组件到DOM

将组件渲染到DOM上,需要使用自举/bootstrap函数:

  1. bootstrap(EzApp);

这个函数的作用就是通知Angular2框架将EzApp组件渲染到DOM树上。

简单吗?我知道你一定还有疑问,别着急,我们慢慢把缺失的知识点补上!

复制代码
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>hello,angular2</title>
    <!--模块加载器-->
    <script type="text/javascript" src="lib/system@0.16.11.js"></script>
    <!--Angular2模块库-->
    <script type="text/javascript" src="lib/angular2.dev.js"></script>
    <script>
        //设置模块加载规则
        System.baseURL = document.baseURI;
        System.config({
            map:{traceur:"lib/traceur"},
            traceurOptions: {annotations: true}
        });
    </script>        
</head>
<body>
    <!--组件渲染锚点-->
    <my-app></my-app>
    
    <!--定义一个ES6脚本元素-->
    <script type="module">
        //从模块库引入三个类型定义
        import {Component,View,bootstrap} from "angular2/angular2";
        
        //组件定义
        @Component({selector:"my-app"})
        @View({template:"<h1>Hello,Angular2</h1>"})
        class EzApp{}       
        
        //渲染组件
        bootstrap(EzApp);
    </script>
</body>
</html>
复制代码

摘自:http://www.hubwiz?.com/class/5599d367a164dd0d75929c76











本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/6841654.html,如需转载请自行联系原作者

相关文章
|
3月前
|
JavaScript 前端开发 开发者
深入解析Angular装饰器:揭秘框架核心机制与应用——从基础用法到内部原理的全面教程
【8月更文挑战第31天】本文深入解析了Angular框架中的装饰器特性,包括其基本概念、使用方法及内部机制。装饰器作为TypeScript的关键特性,在Angular中用于定义组件、服务等。通过具体示例介绍了`@Component`和`@Injectable`装饰器的应用,展示了如何利用装饰器优化代码结构与依赖注入,帮助开发者构建高效、可维护的应用。
32 0
|
存储 JavaScript 前端开发
Angular 14 inject 函数使用过程中的一些注意事项
Angular 14 inject 函数使用过程中的一些注意事项
|
6月前
|
资源调度 JavaScript 前端开发
Angular CLI 里打印出来的 TypeScript 版本号是从哪里来的
Angular CLI 里打印出来的 TypeScript 版本号是从哪里来的
|
6月前
|
JSON 数据格式
别扯那没用的~全网最简洁方法~让Angular可以直接引入import本地的json文件
别扯那没用的~全网最简洁方法~让Angular可以直接引入import本地的json文件
|
6月前
|
传感器 JavaScript 前端开发
前端框架Svelte放弃TS,如何使用纯JS实现类型检查?
前端框架Svelte放弃TS,如何使用纯JS实现类型检查?
|
JavaScript 前端开发 容器
从编译后的代码,分析 Angular @Injectable 的工作原理
从编译后的代码,分析 Angular @Injectable 的工作原理
|
JavaScript API 开发者
为依赖Angular.js的上古项目给VSCode编写$scope定义跳转扩展插件
虽然Angular.js停止更新已经一年了,但依赖它的上古时代的项目并不少。由于都是使用js开发,很难为其提供很好的维护,所以直到今天开发维护也并不愉快。可以说没有开发插件的支持,再成熟老练的框架都发挥困难。
165 0
为依赖Angular.js的上古项目给VSCode编写$scope定义跳转扩展插件
|
JavaScript 数据安全/隐私保护
Angular最新教程-第五节编写第一个组件
Angular最新教程-第五节编写第一个组件
163 0
Angular最新教程-第五节编写第一个组件
|
Java
Angular最新教程-第四节详细说明初始化项目
Angular最新教程-第四节详细说明初始化项目
298 0
Angular最新教程-第四节详细说明初始化项目
如何通过调试的方式搞清楚Angular createEmbeddedView具体创建的UI元素是什么
如何通过调试的方式搞清楚Angular createEmbeddedView具体创建的UI元素是什么
220 0
如何通过调试的方式搞清楚Angular createEmbeddedView具体创建的UI元素是什么