1

我想构建一个指令(我们称它为“A”),它接受 HTML 用于转入内容,并通过ng-click使用自定义逻辑在其上添加处理程序来修改其转入内容。

我认为预链接将是一个很好的地方,但显然我错了(似乎文档建议反对它)。

每个“A”指令都会接受它自己的(唯一的)内容,所以我不能在编译阶段这样做。

link功能中,我不确定我能做什么......

那么,有没有人做过类似的事情呢?

编辑:

我忘了提到这一点:ngClick应该在指令的范围内定义处理程序,而不是在父范围内。我不知道 Angular 是否允许这样做,但这就是我所需要的。

4

1 回答 1

1

在您的模板中,您应该在要添加自定义 html 的元素上添加 ng-transclude。

您对指令的使用:

    <attribute ng-click="clickMe()">
        <div>
            transcluded data
        </div>
    </attribute >

并在您的模板中:

<span ng-transclude>
</span>

希望这是有道理的:)

于 2014-09-15T13:13:32.720 回答