gpt4 book ai didi

javascript - AngularJS:在隔离范围内获取属性定义指令的值

转载 作者:行者123 更新时间:2023-12-03 12:37:58 24 4
gpt4 key购买 nike

所以我有一个自定义指令,名为 custom 如下:

app.directive('custom', function()
{
return {

restrict: 'A',
scope: { itemSelector: '=custom', gutter: '=' },
link: function(scope, element, attrs){
console.log("IS: " + scope.itemSelector);
console.log("GUTTER: " + scope.gutter);
}
}
}

通过 HTML 调用,如下所示

<div custom="item" gutter="10"><!--content--></div>

任何人都可以提出为什么 scope.gutter === '10'scope.itemSelector === undefined 吗?

是否可以通过这种方式获取定义属性的指令的值?

谢谢

最佳答案

我猜 item 没有在您的指令的父范围中定义。您在下面的帖子中解释了两个解决方案( AngularJS Directive Passing String )

  • 您希望项目作为字符串传递并在其周围添加单引号(默认情况下将其计算为 Angular 表达式)

    <div custom="'item'" gutter="10"><!--content--></div>

  • 或者更改指令配置,以便将自定义属性视为字符串:范围:

    { itemSelector: '@custom', gutter: '=' }

希望这有帮助

关于javascript - AngularJS:在隔离范围内获取属性定义指令的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23653394/

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