2017-06-13 81 views
-1

我在自定义指令中检查ng-if条件时遇到问题。实际上,我是绑定响应并检查template.Here中的条件,它不检查条件并且同时显示两个字体很棒的图标。ng-if条件在指令模板中不起作用

Html code: 

    <mydirective ng-repeat="Activiy in dDetails.activiy | orderBy:'$index':true | limitTo: limit as results" n="{{Activiy.auditlog}} 
    m="{{Activiy.activityStatus}}"></mydirective> 

    Directive code: 

    app.directive("mydirective", function(){ 
      return { 
      restrict: "EA", 
      scope: { 
       n: "@", 
       m: "@"  
      }, 
      template: "<span>{{n}}</span><span ng-if= 'm' == 'SUCCESS'><i class='fa fa-check' style='color: green;'></i></span><span ng-if= 'm' !='SUCCESS'><i class='fa fa-close' style='color: red;'></i></span><br>", 

      link: function(scope){ 
       //console.log("foo: " + scope.m + " loaded"); 
      } 
      }; 
     }); 

[![在这里输入的形象描述] [1] [1] 这是它的外观在屏幕shot.Actually它应该只显示一个图标,如果响应是成功它应该显示绿色标志。如果失败,应显示红十字标记。

Can you please correct my code. 

Thanks in Advance. 


    [1]: https://i.stack.imgur.com/1FUuv.png 

这就是它在屏幕截图中的样子。实际上它应该只显示一个图标。

回答

1

当您指的是您不使用引号的范围内的变量时。如果你把引号解释成一个字符串。尝试这样的:

app.directive("mydirective", function(){ 
    return { 
    restrict: "EA", 
    scope: { 
     n: "@", 
     m: "@"  
    }, 
    template: '<span>{{n}}</span><span ng-if="m == \'SUCCESS\'"><i class="fa fa-check" style="color: green;"></i></span><span ng-if="m !=\'SUCCESS\'><i class="fa fa-close" style="color: red;"></i></span><br>', 

    link: function(scope){ 
     //console.log("foo: " + scope.m + " loaded"); 
    } 
    }; 
}); 
+0

是啊谢谢它它工作:) –

+0

太棒了!请投我的答案8D – deividfortuna

+0

是我投了tq哥们:) –