我需要确定数组中是否存在值.
我使用以下功能:
Array.prototype.contains = function(obj) {
var i = this.length;
while (i--) {
if (this[i] == obj) {
return true;
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
上面的函数总是返回false.
数组值和函数调用如下:
arrValues = ["Sam","Great", "Sample", "High"]
alert(arrValues.contains("Sam"));
Run Code Online (Sandbox Code Playgroud) 我在Angularjs中遇到一个问题,在我的数据从服务器返回之前,我的HTML中有一个闪烁.
这是一个展示问题的视频:http://youtu.be/husTG3dMFOM - 注意#| 和右边的灰色区域.
我尝试过ngCloak没有成功(尽管ngCloak确实阻止括号出现在承诺中)并且想知道在Angular填充HTML之前隐藏内容的最佳方法.
我让它在我的控制器中使用此代码:
var caseCtrl = function($scope, $http, $routeParams) {
$('#caseWrap').hide(); // hides when triggered using jQuery
var id = $routeParams.caseId;
$http({method: 'GET', url: '/v1/cases/' + id}).
success(function(data, status, headers, config) {
$scope.caseData = data;
$('#caseWrap').show(); // shows using jQuery after server returns data
}).
error(function(data, status, headers, config) {
console.log('getCase Error', arguments);
});
}
Run Code Online (Sandbox Code Playgroud)
...但我一次又一次地听不到从控制器操纵DOM.我的问题是如何使用指令实现这一目标?换句话说,在从服务器加载所有内容之前,如何隐藏指令所附加的元素?