嘿伙计们,我正在计划一个我正在制作的指令,它本质上是一个带有计时器的弹出窗口。基本上,计划是传入一个对象,该对象可以配置属性以构造消息。该指令将包含html模板,我们将根据服务中设置的属性附加消息/ html。例如:
$rootScope.timer = 'recursive time fn goes here'
obj = {
message : '<span ng-click="connect()">Custom message goes here {{ timer }} </span>'
}
Popup.pop(obj);
等。问题的关键是$rootScope
计时器需要打勾(这在控制器中很简单),但是如果插值则指令将html设置为字符串,如果我正确的话,它不会更新值。我的问题是我如何获得指令在指令内滴答计时器。我需要在$compile
中使用directive
吗?如果是这样的话?此外,如果我需要,我将如何从此服务传递ng-click
函数?对不起,如果它的混乱请求问题。
答案 0 :(得分:0)
试试这个
//you can add your custom messge and time function returning value to the way u want
// this is the basic way to do
var testing = angular.module('testing', [])
testing.directive('mydir', function ($compile, $rootScope) {
var template = '<span ng-click="connect()">custom message</span>'
return {
restrict: 'E',
link: function (scope, ele, attribute) {
scope.connect = function () {
alert('popup' + new Date().getTime());
}
var content = $compile(template)(scope);
ele.append(content)
}
}
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body>
<div ng-app="testing">
<mydir></mydir>
</div>
</body>
&#13;