angular4应用中输入的最小值和最大值的方法


Posted in Javascript onMay 17, 2019

Angular4输入属性

输入属性通常用于父组件向子组件传递信息

举个栗子:我们在父组件向子组件传递股票代码,这里的子组件我们叫它app-order

首先在app.order.component.ts中声明需要由父组件传递进来的值

order.component.ts

...

@Input()

stockCode: string

@Input()

amount: string

...

order.component.html

<p>这里是子组件</p>

<p>股票代码为{{stockCode}}</p>

<p>股票总数为{{amount}}</p>

然后我们需要在父组件(app.component)中向子组件传值

app.component.ts

...

stock: string

...

app.component.html

<input type="text" placeholder="请输入股票代码" [(ngModel)]="stock">

<app-order [stockCode]="stock" [amount]="100"></app-order>

这里我们使用了Angular的双向数据绑定,将用户输入的值和控制器中的stock进行绑定。然后传递给子组件,子组件接收后在页面显示。

Angular4输出属性

当子组件需要向父组件传递信息时需要用到输出属性。

举个栗子:当我们从股票交易所获得股票的实时价格时,希望外部也可以得到这个信息。为了方便,这里的实时股票价格我们通过一个随机数来模拟。这里的子组件我们叫它app.price.quote

使用EventEmitter从子组件向外发射事件

price.quote.ts

export class PriceQuoteComponent implements OnInit{

 stockCode: string = 'IBM';

 price: number;

 //使用EventEmitter发射事件

 //泛型是指往外发射的事件是什么类型

 //priceChange为事件名称

 @Output()

 priceChange:EventEmitter<PriceQuote> = new EventEmitter();

 constructor(){

 setInterval(() => {

  let priceQuote = new PriceQuote(this.stockCode, 100*Math.random());

  this.price = priceQuote.lastPrice;

  //发射事件

  this.priceChange.emit(priceQuote);

 })

 }

 ngInit(){

 }

}

//股票信息类

//stockCode为股票代码,lastPrice为股票价格

export class PriceQuote{

 constructor(public stockCode:string,

  public lastPrice:number

 )

}

price.quote.html

<p>

 这里是报价组件

</p>

<p>

 股票代码是{{stockCode}}

</p>

<p>

 股票价格是{{price | number:'2.2-2'}}

</p>

接着我们在父组件中接收事件

app.component.html

<app-price-quote (priceChange)="priceQuoteHandler($event)"></app-price-quote>

<p>

 这是在报价组件外, 股票代码是{{priceQuote.stokcCode}},

 股票价格是{{priceQuote.lastPrice | number:'2.2-2'}}

</p>

事件绑定和原生的事件绑定是一样的,都是将事件名称放在()中。

app.component.ts

export class AppComponent{

 priceQuote:PriceQuote = new PriceQuote('', 0);

 priceQuoteHandler(event:PriceQuote){

 this.priceQuote = event;

 }

}

这里的event类型就是子组件传递事件的类型。

angular4应用中输入的最小值和最大值的方法

我有一个带有表单的angular4应用程序.在这个我输入一个百分比输入.所以,我想用0到100之间的值来阻止输入.

我试图添加min =“0”和max =“100”,但我仍然可以输入一个高于100或小于0的数字.

模板

<md-input-container>
 <input type="number" 
  maxlength="3" 
  min="0" 
  max="100" 
  required 
  mdInput 
  placeholder="Charge" 
  [(ngModel)]="rateInput" 
  name="rateInput">
 <md-error>Required field</md-error>
</md-input-container>

你知道我怎么做吗?

解决方法

我成功地使用了表单控件.

这是我的HTML代码:

<md-input-container>
    <input type="number" min="0" max="100" required mdInput placeholder="Charge" [(ngModel)]="rateInput" name="rateInput" [formControl]="rateControl">
    <md-error>Please enter a value between 0 and 100</md-error>
  </md-input-container>

在我的打字稿代码中,我有:

this.rateControl = new FormControl("",[Validators.max(100),Validators.min(0)])

因此,如果我们输入的值大于100或小于0,则材料设计输入变为红色且该字段未验证.所以之后,如果值不好,我点击保存按钮时就不保存.

总结

以上是三水点靠木为你收集整理的angular4应用中输入的最小值和最大值全部内容,希望文章能够帮你解决angular4应用中输入的最小值和最大值所遇到的程序开发问题。

Javascript 相关文章推荐
无语,javascript居然支持中文(unicode)编程!
Apr 12 Javascript
(转载)JavaScript中匿名函数,函数直接量和闭包
May 08 Javascript
调试JavaScript中正则表达式中遇到的问题
Jan 27 Javascript
深入学习JavaScript对象
Oct 13 Javascript
javascript每日必学之循环
Feb 19 Javascript
JavaScript中的ParseInt(&quot;08&quot;)和“09”返回0的原因分析及解决办法
May 19 Javascript
js仿腾讯QQ的web登陆界面
Aug 19 Javascript
Vue数据驱动模拟实现5
Jan 13 Javascript
w3c编程挑战_初级脚本算法实战篇
Jun 23 Javascript
微信小程序 页面跳转事件绑定的实例详解
Sep 20 Javascript
vue.js根据代码运行环境选择baseurl的方法
Feb 28 Javascript
vue-cli+webpack项目 修改项目名称的方法
Feb 28 Javascript
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 #jQuery
详解 微信小程序开发框架(MINA)
May 17 #Javascript
Vue模板语法中数据绑定的实例代码
May 17 #Javascript
jQuery控制input只能输入数字和两位小数的方法
May 16 #jQuery
微信小程序云开发详细教程
May 16 #Javascript
atom-design(Vue.js移动端组件库)手势组件使用教程
May 16 #Javascript
小程序scroll-view安卓机隐藏横向滚动条的实现详解
May 16 #Javascript
You might like
php中对2个数组相加的函数
2011/06/24 PHP
php数组函数array_walk用法示例
2016/05/26 PHP
PHP会话控制实例分析
2016/12/24 PHP
自动生成文章摘要的代码[JavaScript 版本]
2007/03/20 Javascript
Javascript匿名函数的一种应用 代码封装
2010/06/27 Javascript
jQuery插件FusionCharts绘制2D环饼图效果示例【附demo源码】
2017/04/10 jQuery
ionic2自定义cordova插件开发以及使用(Android)
2017/06/19 Javascript
浅谈angular.js跨域post解决方案
2017/08/30 Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
2018/03/01 Javascript
Vue中android4.4不兼容问题的解决方法
2018/09/04 Javascript
React事件处理的机制及原理
2018/12/03 Javascript
vue elementui el-form rules动态验证的实例代码详解
2019/05/23 Javascript
js实现简单分页导航栏效果
2019/06/28 Javascript
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
Python中使用ConfigParser解析ini配置文件实例
2014/08/30 Python
python命令行参数解析OptionParser类用法实例
2014/10/09 Python
在Python中使用mongoengine操作MongoDB教程
2015/04/24 Python
windows下安装python的C扩展编译环境(解决Unable to find vcvarsall.bat)
2018/02/21 Python
Python多线程原理与用法实例剖析
2019/01/22 Python
Python facenet进行人脸识别测试过程解析
2019/08/16 Python
python实现代码统计程序
2019/09/19 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
Python中低维数组填充高维数组的实现
2019/12/02 Python
pyx文件 生成pyd 文件用于 cython调用的实现
2021/03/04 Python
css3闪亮进度条效果实现思路及代码
2013/04/17 HTML / CSS
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
助人为乐表扬信范文
2014/01/14 职场文书
大学生水果店创业计划书
2014/01/28 职场文书
风险评估实施方案
2014/03/09 职场文书
结婚喜宴主持词
2014/03/14 职场文书
师范生自我鉴定
2014/03/20 职场文书
2016新年致辞
2015/08/01 职场文书
2016民族团结先进个人事迹材料
2016/02/26 职场文书
2019最新公司租房合同(例文)
2019/07/18 职场文书
Python中itertools库的四个函数介绍
2022/04/06 Python