前言

上一节我们已经把环境给搭建起来了,现在我们通过一个快速案例把angular 2.0 初步了解一下,后续我们会深入每一个细节,这个案例主要是一个【英雄(Hero)】列表的展示,创建,编辑。这个案例我打算分五个章节来做,第一个章节我们可以学习到angular2.0一下内容:

  • 单项数据绑定
  • 双向数据绑定

组织代码

1.在app.component.ts 文件添加 如下内容

AppComponent 下添加两个属性

export class AppComponent{
public title: string = '英雄展示';
public hero: string = '英雄';
}

@componenttemplate 属性下更改我们的模板,我们用了typescript 的多行字符串

template: `<h1>{{title}}</h1><h2>{{hero}} 详情</h2>`  //用了typescrip 多行字符串 ,要注意

这时候我们浏览会看到已经绑定上我们的数据。

2.创建单独的类实现绑定(单项数据绑定)

目前我们的 英雄 只有一个属性,我们直接在 类 AppComponent 无妨,但当我们属性慢慢增多的时候,我们可以从一个字面字符串转换成一个类。

在app.component.ts 文件添加如下内容

export class Hero{
id:number;
name:string;
}

这时候我们的hero 属性就可以修改成

 hero:Hero = {
id:1,
name:'成龙'
}

模板文件修改成

template: `<h1>{{title}}</h1><h2>{{hero.name}} 详情</h2>`

为了显是更多的属性,我们来修改下模板,添加几个标签

<h2>{{hero.name}}详情!</h2>
<div><label>id:</label>{{hero.id}}</div>
<div>
<label>name:</label>
<input type="text" value="{{hero.name}}" placeholder="name" />
</div>

hero 的名字我们用了一个文本框,但是我们修改文本的时候没有看到 h2 标签的修改,难道我们写错了,不是,原来跟angular1.0 不一样,这不是双向数据绑定,而是单项数据绑定

3. 双向数据绑定

angular 的双向数据绑定是什么样子的呢,接下来我们会用到 angular 的内置指令 ngModel

我们只需修改我们的模板文件

<input type="text" [(ngModel)]="hero.name" placeholder="name" />

用上angular的内置指令,就实现了我们双向数据绑定。

结束语

到这里我们已经实现了简单的数据绑定,下一章节我么会做列表,先上一张效果图。

源码最后我会上传github,如有需要请私聊我。

angularjs 2.0 快速案例(1)的更多相关文章

  1. angularjs 2.0 快速开始

    前言 angularjs2.0 如果发布,公司的项目会基于2.0开发,在1.0的时候就踩了好多坑,趁这2.0还没正式发布,赶紧踩下坑. 这篇文章是参考angularjs2.0 官方文档写的,开发环境需 ...

  2. 转 AngularJS 2.0将面向移动应用并放弃旧浏览器

    AngularJS团队表示“AngularJS 2.0是移动应用的框架”.该框架将继续支持桌面,但其主要关注点变成了移动领域.它的目标还包括通过转译器支持EcmaScript 6(因为浏览器还不支持E ...

  3. Ant Design 3.0 使用案例

    代码地址如下:http://www.demodashi.com/demo/12309.html 本文适合对象 有过React使用经验. 有过webpack使用经验. 了解node. DEMO使用方式 ...

  4. 【转】Vue.js 2.0 快速上手精华梳理

    Vue.js 2.0 快速上手精华梳理 Sandy 发掘代码技巧:公众号:daimajiqiao 自从Vue2.0发布后,Vue就成了前端领域的热门话题,github也突破了三万的star,那么对于新 ...

  5. 八爪鱼招标网的百度权重升为2了,独立IP也从0快速发展为1000

      自八爪鱼招标网上线以来,本着以客户一切利益为出发点,坚持提供国内首个免费招标信息平台为目标,经过各位同事不断地努力,不断收集客户各种各样的招标.采购实际需求,与政府.事业单位及中小型企业一对一的沟 ...

  6. Angular2.0快速开始

    参考资料: Angular2.0快速开始 AngularJS2 教程

  7. 聊天系统Demo,增加文件传送功能(附源码)-- ESFramework 4.0 快速上手(14)

    本文我们将介绍在ESFramework 4.0 快速上手(08) -- 入门Demo,一个简单的IM系统(附源码)的基础上,增加文件传送的功能.如果不了解如何使用ESFramework提供的文件传送功 ...

  8. 可靠通信的保障 —— 使用ACK机制发送自定义信息——ESFramework 通信框架4.0 快速上手(12)

    使用ESPlus.Application.CustomizeInfo.Passive.ICustomizeInfoOutter接口的Send方法,我们已经可以给服务端或其它在线客户端发送自定义信息了, ...

  9. 聊天系统Demo,增加Silverlight客户端(附源码)-- ESFramework 4.0 快速上手(09)

    在ESFramework 4.0 快速上手 -- 入门Demo,一个简单的IM系统(附源码)一文中,我们介绍了使用ESFramework的Rapid引擎开发的winform聊天程序,本文我们将在之前d ...

随机推荐

  1. mac下安装mysql教程

    由于更换了mac电脑,需要装一个mysql,经过各种资料的翻阅,各种踩坑,终于装完了,记录一下,方便大家参照: 1.下载最新的mysql安装包,下载地址:http://dev.mysql.com/do ...

  2. C#开发中常用方法2------json转DataTable

    /// <summary>/// 将json转换为DataTable/// </summary>/// <param name="strJson"&g ...

  3. XE版本 InputQuery 可以同时填多个输入值

    function InputQuery(const ACaption: string; const APrompts: array of string; var AValues: array of s ...

  4. Linux Shell 数组

    shell 数组一般都是一维数组. 1. 数组的声明 declare -a arr 该命令将声明一个数组arr,实际上不声明也可以直接定义数组. 2. 数组的初始化 arr=(1 2 3):该命令定义 ...

  5. Codeforces 624

    B. Making a String time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  6. Print a Binary Tree in Vertical Order

    http://www.geeksforgeeks.org/print-binary-tree-vertical-order/ package algorithms; import java.util. ...

  7. .NET CLI 命令

    您可以立即使用的部分通用 .NET CLI 命令 命令 说明 dotnet new 使用 C# 语言初始化用于类库或控制台应用程序的有效项目. dotnet restore 还原在指定项目的 proj ...

  8. linux 下使用配置文件

    最近鼓捣双机热备,写了些shell脚本 适用配置文件 以 ifbeat 为例,linux的标准的配置文件中等号两遍不能存在括号, 空格 或特殊符号可以用转衣服 ' \' beat=true prima ...

  9. 计应152第六组Sprint计划会议

    Sprint计划会议 会议时间:2016年12月8下午16:00 会议地点:宿舍 会议进程 • 首先我们讨论了排球计分规则程序完成需要做的一些工作:程序的初期设计,数据分析,典型用户,场景,代码的编写 ...

  10. C++ Primer Plus 第六版笔记

    C++ Primer Plus 第六版笔记 关于对象声明的思考 转自:http://www.cnblogs.com/weiqubo/archive/2009/11/02/1930042.html C+ ...