gpt4 book ai didi

javascript - AngularJS,指令

转载 作者:行者123 更新时间:2023-11-28 15:48:39 26 4
gpt4 key购买 nike

我通过此链接学习 AngularJS 指令:Directives

当我到达最后一个示例时:创建通信指令

我确实找到了这一行(来自 script.js):

title: '@' // Line 33 at the script.js

问题是我不知道这一行的含义,我知道 title 是一个独立的范围属性,但是 @ 是什么? ,我了解到:

  • '=' is where the attribute name is the same as the value
  • '=info' where info is the attribute

但是上面链接中的文档没有解释什么是 @ ,我最好的猜测是,当 @是值,分配给title的值property 是 title 属性的值,但我不太确定是否有人可以帮助我理解它是什么,我将非常感激,谢谢大家,祝你有美好的一天。

最佳答案

@ 是一种隔离范围绑定(bind)(如 =)。但是,@ 表示仅获取属性的,并且创建与外部作用域的双向绑定(bind)。

因此,如果您想在指令中使用某些值,但该值在该指令实例的持续时间内没有更改,那么 @ 是一个不错的选择。

一个简单的例子是,如果您想为指令模板设置颜色:

<my-color-box color="red"></my-color-box>

然后,在指令中使用如下属性:

app.directive('myColorBox', function() {

return {
restrict: E,
scope: {
color: '@'
},
template: '<div style="background-color: {{color}}"></div>'
}
});

关于javascript - AngularJS,指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21352214/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com