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 相关文章推荐
jquery 操作单选框,复选框,下拉列表实现代码
Oct 27 Javascript
jQuery 通过事件委派一次绑定多种事件,以减少事件冗余
Jun 30 Javascript
javascript模拟select,jselect的方法实现
Nov 08 Javascript
通过jQuery源码学习javascript(三)
Dec 27 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
Apr 07 Javascript
jQuery实现判断滚动条到底部
Jun 23 Javascript
JavaScript各类型的关系图解
Oct 16 Javascript
Javascript打印局部页面实例
Jun 21 Javascript
JS闭包的几种常见形式实例详解
Sep 16 Javascript
jQuery实现图片随机切换、抽奖功能(实例代码)
Oct 23 jQuery
javascript实现的图片预览和上传功能示例【兼容IE 9】
May 01 Javascript
react项目从新建到部署的实现示例
Feb 19 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
MYSQL 小技巧 -- LAST_INSERT_ID
2009/11/24 PHP
php生成shtml类用法实例
2014/12/09 PHP
php批量添加数据与批量更新数据的实现方法
2014/12/16 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
javascript:以前写的xmlhttp池,代码
2008/05/18 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
2012/02/27 Javascript
动态添加option及createElement使用示例
2014/01/26 Javascript
JavaScript制作的可折叠弹出式菜单示例
2014/04/04 Javascript
JS实现浏览器状态栏显示时间的方法
2015/10/27 Javascript
Javascript实现图片加载从模糊到清晰显示的方法
2016/06/21 Javascript
js获取当前时间(昨天、今天、明天)
2016/11/23 Javascript
angular.js 路由及页面传参示例
2017/02/24 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
2018/09/06 jQuery
webpack+vue+express(hot)热启动调试简单配置方法
2018/09/19 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
微信公众平台获取access_token的方法步骤
2019/03/29 Javascript
Layer组件多个iframe弹出层打开与关闭及参数传递的方法
2019/09/25 Javascript
使用layer模态框给新页面传值的方法
2019/09/27 Javascript
Vue的data、computed、watch源码浅谈
2020/04/04 Javascript
[43:58]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第二局
2016/02/27 DOTA
python服务器端收发请求的实现代码
2014/09/29 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
Python Pandas 如何shuffle(打乱)数据
2019/07/30 Python
python sklearn常用分类算法模型的调用
2019/10/16 Python
在python shell中运行python文件的实现
2019/12/21 Python
pytorch forward两个参数实例
2020/01/17 Python
Java byte数组操纵方式代码实例解析
2020/07/22 Python
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
厨师长岗位职责范本
2014/08/25 职场文书
财政局党的群众路线教育实践活动整改方案
2014/09/21 职场文书
文明单位创建材料
2014/12/24 职场文书
离婚纠纷代理词
2015/05/23 职场文书
Pytorch 如何实现LSTM时间序列预测
2021/05/17 Python
浅谈Python 中的复数问题
2021/05/19 Python
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android
python 管理系统实现mysql交互的示例代码
2021/12/06 Python