这个指令是试图创建一个名为进度条的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