二,angular2 for javascript 显示数据 用户输入
angular2稳定版发布有段时间了,最近一直寻找关于angular2 for javascript方面的教程文档,发现大多是采用的typescript,官网也只是给了一个angular2 for javascript开发环境的构建,后续的教程内容都还没有发布.所以打算自己摸索下angular2 for javascript,于是有了这篇文章.
因为在搜索相关资料时,有位朋友说:" Everything that we can do in Angular 2 in TypeScript,
we can also do in JavaScript."
这位朋友并没有说具体的实现方法,但是,听到这句话,还是给了我很大的往下摸索的信心,所以文章是参照官网的流程来走的.
关于angular2 for javascript是否适合实际的项目开发以及下文所阐述的知识点准确与否,还请各位看客多提宝贵意见.闲话不叙,切入正题.
1,angular2 for javascript开发环境的构建
请参阅之前整理的文章<<Anjular2 for JavaScript 开发环境搭建>>
2,显示数据-用户输入 –angular2 for javascript开发
因为相对第一步只是修改了组件(app.component.js),添加了一个模板文件(input.html)的代码,所以这里只列出这两个文件,其余文件请移步第一步进行查看.
app.component.js
(function(app) { app.AppComponent = ng.core.Component({ selector: 'my-app', //引入外部模板文件input.html templateUrl:'input.html' }) .Class({ constructor: function() { this.title = 'Tour of Heroes'; this.heroes = ['Windstorm', 'Bombasto', 'Magneta', 'Tornado']; this.myHero = this.heroes[3]; this.clickMessage = ''; this.values = ''; this.value = ''; }, onClickMe:function(){ this.clickMessage = 'You are my hero!'; }, onKey:function(event) { this.values += event.target.value + ' | '; }, update:function(value) { this.value = value; } }); })(window.app || (window.app = {}));
input.html
注意文件路径:/var/www/angular/angular2-quickstart/input.html,即与index.html路径保持一致
Everything that we can do in Angular 2 in TypeScript, we can also do in JavaScript." <h1>{{title}}</h1> <h2>My favorite hero is: {{myHero}}</h2> <h3>循环输出:</h3> <p>Heroes:</p> <ul> <li *ngFor="let hero of heroes"> {{ hero }} </li> </ul> <!--绑定到用户输入事件--> <h3>绑定到用户输入事件:</h3> <button (click)="onClickMe()">Click me!</button> {{clickMessage}} <!--通过 $event 对象取得用户输入--> <h3>通过 $event 对象取得用户输入:</h3> <input (keyup)="onKey($event)"> <p>{{values}}</p> <!--从一个模板引用变量中获得用户输入--> <h3>从一个模板引用变量中获得用户输入:</h3> <input #box (keyup)="0"> <p>{{box.value}}</p> <!--按键事件过滤(通过key.enter)--> <!--失去焦点事件 (blur)--> <h3>按键事件过滤(通过key.enter&&失去焦点):</h3> <input #boxs (keyup.enter)="update(boxs.value)" (blur)="update(boxs.value)"> <p>{{value}}</p>
实验结果