使用输入类型为数字时,不设置默认值

时间:2017-11-03 11:55:02

标签: angularjs

我在电子商务中使用角度2。

<div class="col-sm-4 col-md-3" *ngFor="let deals of deals; let i = index;">
<div class=" deals-blk" *ngIf="i < 4">
    <div class="deals-blk-details clearfix">
        <div class="deals-click" (click)="dealsdetails(deals.id)">
            <h3>{{deals.D_NAME}}</h3>
            <p class="short-desc">For duration of 2hours and budget of 3K</p>
            <p class="net-val">Net Value: {{settings.DEFAULT_CURRENCY_SYMBOL}} {{deals.D_SALE_PRICE}}</p>
            <p class="prod-val">{{currencySymbol}} {{deals.D_REGULAR_PRICE}} + {{deals.TAX}}%
                GST</p>
        </div>
        <div class="row clearfix" *ngIf="Show">
            <div class="col-sm-3 selectbox">
                <input type="number"  value="1"  [(ngModel)]="items[i]"  class="form-control input-sm" style="width: 75px;"/>
            </div>

            <div class="col-sm-9" style="padding-left:30px;">
                <button class="col-sm-8" (click)="addtocart(deals,items,i)">ADD TO CART</button>
            </div>
        </div>
    </div>
</div>

deal是一个数组。我显示产品列表。

我声明了像这样的项目变量

 items=[];

我需要默认输入值是&#39; 1&#39;。

但它没有用。

如果我删除[(ngModel)]="items[i]"并显示值为1

1 个答案:

答案 0 :(得分:0)

@vasihuani有两种方法来处理这个

  1. 手动初始化模板中的{{items[i] =1}}值,这不是一个好的编程习惯

  2. 在您正在获取数据的组件类中初始化项目数组,如

    this.deals = [];// fetching from server this.items =[]; for(var i=0;i<this.deals.length;i++){ this.items[i] =1; }

  3. 我更喜欢第二种方法

相关问题