前言

上一节我们已经把环境给搭建起来了,现在我们通过一个快速案例把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. Blend打不开wpf项目,提示无法识别的工具版本“12.0”

          讲项目文件用记事本打开然后修改为“14.0”即可        

  2. js cookie的封装和调用

    <script> function setCookie(cname,cvalue,exdays){ var d = new Date(); d.setTime(d.getTime()+(e ...

  3. DOS命令详解

    DOS命令详解 命令 \? 可以进入命令帮助 1.md命令创建目录. MKDIR [drive:]pathMD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MKD ...

  4. js遍历json

    function test1(){ var json = [{name:'wang',age:22,sex:1},{name:'tang',age:25,sex:1},{name:'yuan',age ...

  5. 【异常】No ManagedConnections available within configured blocking timeout

    Caused by: org.jboss.util.NestedSQLException: No ManagedConnections available within configured bloc ...

  6. 关于C#开发WEB项目TextBox控件的自适应高问题解决办法!

    前两天做WEB开发时候遇到了一个小问题TextBox 控件要根据输入的内容多少自动改变大小,并且这个大小要求是在本页面内最大化.也就是 Width="100%" Height=&q ...

  7. SecurityContextHolder.getContext().getAuthentication() return null

    <security:http> <security:intercept-url pattern="/web/**" access="IS_AUTHENT ...

  8. Avoiding InvokeRequired

    Just read a good article to do cross-thread calling in an easy and elegant way. It is amazing for it ...

  9. bootstrap之clearfix

    bootstrap之clearfix 在bootstrap辅助类中有那么一类,是这么定义的: 利用clearfix样式清除浮动,但是前提条件是在超小型屏幕上能显示才行(因为其是用visible-xs样 ...

  10. charles4抓https请求的注意事项

    最近升级charles4.0后发现抓不了https请求了,但很奇怪ssl证书一样,记得以前用3.0就可以,今天仔细研究了一下,发现4.0的ssl代理设置中有一段说明(可能3.0也有但没注意): 直接上 ...