我是angularjs的新手,我试图让asp.net web api与angularjs一起工作。
为了进行测试,我的域名webapi将始终向angular Checkdomain发送false值并将其分配给$ scope.domainValid
$scope.checkDomain = function (domain, tld) {
$http.get(checkdomainUrl)
.success(function (data) {
$scope.domainValid = data; >> view shows up when i hard code $scope.domainValid=false;
})
.error(function (error) {
});
}
在我看来:
{{domainValid}} >> always show correct value(false), so the data return from webapi works
<div class="dkExistingInfo" ng-show="!domainValid && domainValid!=null">
<span>Tên miền {{newDomain}} đã có người đăng ký. Vui lòng chọn tên khác</span>
</div>
为什么div class =“dkExistingInfo”永远不会出现$ scope.domainValid = data;但适用于$ scope.domainValid = false;
我的控制器/视图发生了什么变化?
答案 0 :(得分:0)
返回数据变量是字符串的类型而不是布尔值。
<强>方法强>
在控制器成功时将变量转换为布尔值。
data = (data === 'true') ? true : false;
$scope.domainValid = data;
或强>
您必须在角度js视图中将其检查为字符串。对于此用途 ng-If 指令:
<div ng-if == "domainValid == 'true'">
<!-- Your code -->
</div>
<div ng-if == "domainValid == 'false'">
<!-- Your code -->
</div>