這個指令是試圖創建一個名爲進度條的HTML元素,當您移動一頁一頁地跟蹤進展。我試圖開發它用作: <progress-bar progress='1' max='6' error="true"></progress-bar>
AngularJS指令傳遞字符串
我只是試圖將信息從html中的^^元素傳遞給我的指令,並處理信息以適當地更改進度欄。
這是工作了「進步」和「最大」的取整數值,但由於某些原因,註釋掉的代碼,它會處理「錯誤」(這是一個字符串)導致的問題。我是angularJS的新手,所以我很抱歉,如果這聽起來令人困惑或不清楚,請詢問是否需要詳細說明。提前致謝!
app.directive('progressBar', function(){
var compileProgressBar = function(scope, elem, attrs) {
var append = '<nav class="navbar navbar-fixed-bottom navbar-footer" role="navigation">\
<div class="container">\
<div class="row">';
var i = 1;
while (i <= parseInt(scope.max)) {
if (i <= parseInt(scope.progress)) {
//if (scope.error == "true"){
//...
//}
//else {
append += '<div class="col-xs-1"><div class="circle-filled"><center>'+i+'</center></div></div>'
//}
} else {
append += '<div class="col-xs-1"><div class="circle-hallow"><center>'+i+'</center></div></div>'
}
i++;
}
append += '</div></div></nav>'
elem.append(append);
elem.bind('click', function(){
if (scope.progress > 1) {
history.back();
scope.$apply();
}
});
}
return {
restrict: 'AE',
scope: {
max: '=max',
progress: '=progress'
//error: '=error'
},
link: compileProgressBar
}
});
什麼是history.back找到綁定模式的詳細信息(); –
你確定錯誤是一個字符串不是布爾值嗎? –
history.back()將回退功能添加到進度條 - 當您單擊進度欄時,它的作用與單擊瀏覽器上的後退按鈕相同。這是正確的方式。 此外,你是正確的,錯誤應該是一個布爾值。然而,我仍然不明白如何將一個布爾值從html傳遞給指令:/ 再一次,非常感謝 – profoundWanderer