这是我的指示
myDirectives.directive('registerSuccess', function($timeout) {
return {
restrict: 'E',
replace: true,
template: "<div class='alert alert-success alert-dismissable'></div>",
link: function(scope, elm, attrs) {
scope.registerSuccess = function(data) {
alert(data);
var msg = "Database "+data+" got registered"
console.log(elm.attr('style'));
elm.text((elm.html()||msg));
elm.removeAttr('style');
$timeout(function(){
elm.hide();
}, 8000);
};
}
};
});
它只显示第一个数据名称,但是当第二个数据被注册时,它不能显示第二个名称,因此它只显示第一个数据名称
在我的控制器中
$scope.registerSuccess(data.dbName);
在我的HTML中
<register-success style='display:none;'></register-success>
答案 0 :(得分:0)
当你第二次调用$ scope.registerSuccess函数时,elm.html函数(在你的链接函数中)返回你第一次设置的有效html。因此,即使&#34; msg&#34;变量有第二个名字。