检查 ng-if 语句中的字符串值

blu*_*arl 9 javascript angularjs angular-ng-if

我想检查一个对象的属性值,并想检查要比较的字符串数据。

<div ng-if="results.dataType === 'textTable'"> 
     This text belongs in a table. 
</div>
Run Code Online (Sandbox Code Playgroud)

到目前为止,所有 div 都与正文中的文本一起出现,其中只有两个 div 应该显示它。

我的 ng-if 语句和字符串比较有什么问题吗?

Jay*_*til 6

这是演示Jsfiddle

js代码

  var app = angular.module('myApp', []);

  app.controller('ctrl', function($scope) {
    $scope.results = {
      dataType: 'textTable'
    };
    $scope.flag = true;

    // for testing purpose

    $scope.toggle = function() {
      if ($scope.flag) {
        $scope.results = {
          dataType: 'textTable'
        };
        $scope.flag = !$scope.flag;
      } else {
        $scope.results = {
          dataType: 'textTableNot'
        };
        $scope.flag = !$scope.flag;
      }

    }
  });
Run Code Online (Sandbox Code Playgroud)

HTML

  <div ng-app='myApp'>

    <div ng-controller='ctrl'>
      <div ng-if='results.dataType === "textTable"'> This text belongs in a table.</div>
      {{results.dataType}}
      <button ng-click='toggle()'>
        Toggle
      </button>
    </div>
  </div>
Run Code Online (Sandbox Code Playgroud)

希望这能解决您的问题