AngularJS:为绑定值指定默认值

时间:2016-01-21 06:50:40

标签: javascript angularjs

我正在使用实时更新进行仪表板,所以在$ http调用后,当db返回null对象时,我想将默认值指定为零

 $scope.SAP=0;
$http({
			method: 'GET',
            url: 'getTilesDataForPrjectReport.do',
		}).then(function(response){
				 if(response.data.proj==='SAP'){
					$scope.SAP=response.data;
				}
			 }
		});
<div style="height:20%; background-color:#ff9e97;">
	<p id="colorPalletDashboardTileRed"> {{SAP.red}}</p>
	<p id="colorPalletDashboardTileAmber">{{SAP.amber}}</p>
	<p id="colorPalletDashboardTileGreen">{{SAP.green}}</p>
	</div>
	<div style="height:18%; background-color:#ff8a81;">
	<p> Total Projects : {{SAP.totalProj}} </p>
	</div>

如果SAP不在响应数据中,我需要在所有SAP绑定中显示0, 即使我将0分配给$ scope.SAP,它也不会反映在html中。我知道可以使用另一个<p>标签的ng-hide来完成,但最简单的解决方案是什么

3 个答案:

答案 0 :(得分:1)

<!-- language: lang-js -->

    <div style="height:20%; background-color:#ff9e97;">
        <p id="colorPalletDashboardTileRed"> {{SAP.red || 0}}</p>
        <p id="colorPalletDashboardTileAmber">{{SAP.amber || 0}}</p>
        <p id="colorPalletDashboardTileGreen">{{SAP.green || 0}}</p>
        </div>
        <div style="height:18%; background-color:#ff8a81;">
        <p> Total Projects : {{SAP.totalProj || 0}} </p>
        </div>
     (or)
 //define $scope.default = 0;
<div style="height:20%; background-color:#ff9e97;">
        <p id="colorPalletDashboardTileRed"> {{SAP.red || default}}</p>
        <p id="colorPalletDashboardTileAmber">{{SAP.amber || default}}</p>
        <p id="colorPalletDashboardTileGreen">{{SAP.green || default}}</p>
        </div>
        <div style="height:18%; background-color:#ff8a81;">
        <p> Total Projects : {{SAP.totalProj || default }} </p>
        </div>

<!-- end snippet -->

I think, you can try this
or

我想你可以试试这个

答案 1 :(得分:1)

确保您的html应位于控制器的上下文中,您将在其中获取数据并分配给$scope.SAP

您可以在那里使用数字过滤器,它也会为您提供,分隔格式。

{{SAP.red | number}}

Sample Demo

答案 2 :(得分:0)

您可以指定

,而不是分配$scope.SAP = {"red": 0, "amber": 0, "green": 0, "totalProj": 0}
public class CrmObject
{
    [Key]
    [Column(Order = 0)]
    public int Id { get; set; }
    public bool IsProcessed { get; set; }
    public string Error { get; set; }
    public long PartnerOID { get; set; }
    public OrdnungsbegriffeTypeType OrdnungsbegriffTyp { get; set; }
    [Required]
    public string OrdnungsbegriffTypString { get; set; }
    public string OrdnungsbegriffWert { get; set; }
    public CrmJob Job { get; set; }
    [ForeignKey("Job")]
    [Column(Order = 1)]
    public int JobId { get; set; }
}

[Table("Contacts")]
    public class Contact: CrmObject
    {
        public DateTime KontaktAm { get; set; }
        public string ErstelltVon { get; set; }
        public DateTime ErstelltAm { get; set; }
        public string Vorlage { get; set; }
}

[Table("Tasks")]
    public class Task: CrmObject
    {
        public long AufgabeOID { get; set; }
        public string ExterneId { get; set; }
        public string Aufgabendefinitionsname { get; set; }
}

或任何默认值。