【问题标题】:How to assign value based on property in AngularJs如何根据AngularJs中的属性分配值
【发布时间】:2015-03-18 09:01:11
【问题描述】:

我将潜在客户法规存储在我的数据库中。值可以是 1、2、3 或 4。

实际上我使用 ngResource get 返回了一个人类可读的:

Client.get({ id: $stateParams.clientId }, function(data) {
    $scope.client = data;

    // Start of numeric values to status
    for(var i=0;i<data.leads.length;i++){
        if(data.leads[i].statut===1){
            data.leads[i].statutMessage = 'À contacter';
        }
        else if(data.leads[i].statut===2){
            data.leads[i].statutMessage = 'En cours';
        }
        else if(data.leads[i].statut===3){
            data.leads[i].statutMessage = 'Obtenu';
        }
        else if(data.leads[i].statut===4){
            data.leads[i].statutMessage = 'Non obtenu';
        }
    }

});

我想将此逻辑提取到客户服务,以便将每个潜在客户“statut”(1、2、3、4)转换为真正的法规('À contacter'、'En cours '、'Obtenu'、'非 obtenu')。

我可以使用this technique(指令)

如果在这种情况下指令不是正确的方法,我应该怎么做?

【问题讨论】:

    标签: angularjs prototype ngresource


    【解决方案1】:

    好吧,当您需要显示“法规”时,您可以在控制器中以这种方式对其进行建模:

    $scope.leadMessages = {
      1: 'À contacter',
      2: 'En cours',
      3: ..etc
    }
    

    在您的 HTML 中:

    <div ng-repeat="lead in data.leads">{{leadMessages[lead.statut]}}</div>
    

    勇气 :-)

    【讨论】:

    • 谢谢/谢谢! Je vais utiliser cette 技术。
    猜你喜欢
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多