AngularJS - 在正确的范围内评估指令的选项

2024-03-28

这里是有角度的新手。试图让我的头脑集中在指令、范围、嵌入等等方面。

这就是我想要实现的目标——单元格中的每个表格都需要根据单元格内的值进行颜色编码(更改 bgcolor 或添加特定的 CSS 类)。复杂的是,该单元格不具有裸值 - 它还有其他位和小玩意。因此,在单元格内,我希望能够添加自定义 HTML。

我的模板如下所示:

<span color-codify="{'max' : object.max, 'value' : object.value}" ng-transclude>
  {{ object.value }}
  <a href="#">Edit</a> | <a href="#">Delete</a>
</span>

我的指令如下所示:

myModule.directive('colorCodify', function() {
  return {
    restrict: 'A',
    transclude: 'true',
    'link' : function(scope, element, attrs, controller) {
      var opts = scope.$eval(attrs.colorCodify);
      console.log(opts); // THIS DISPLAYs {max: undefined, value: undefined} 
    }
  }
});

令人惊讶的是,尽管{{ object.value }}<span>元素渲染正确,但它没有正确传递给指令。但是,如果我指的是$parent它工作正常。例子:

<span color-codify="{'max' : $parent.object.max, 'value' : $parent.object.value}" ng-transclude></span>

这是怎么回事?


<span color-codify="{'max' : object.max, 'value' : object.value}" ng-transclude>
  {{ object.value }}
  <a href="#">Edit</a> | <a href="#">Delete</a>
</span>

.

myModule.directive('colorCodify', function() {
  return {
    restrict: 'A',
    transclude: 'true',
    scope: {getOpts: "&colorCodify"},
    'link' : function(scope, element, attrs, controller) {
      var opts = scope.getOpts();
      console.log(opts);
    }
  }
});

有关更多信息,请查看指令定义对象部分http://docs.angularjs.org/guide/directive http://docs.angularjs.org/guide/directive

编辑$parent:

我想您需要更多地了解范围如何在角度中工作(它们如何相互继承以及它们如何覆盖这些继承的属性)。这将是 Angularjs 中最重要的方面之一。我建议您点击链接并一遍又一遍地阅读它们,直到您明白为止。

ngScope 文档参考 http://docs.angularjs.org/api/ng.%24rootScope.Scope
开发者指南 http://docs.angularjs.org/api/ng.%24rootScope.Scope
奖励(来自 AngularJS 团队的视频,讨论 AngularJS 的最佳实践):
Youtube http://www.youtube.com/watch?v=ZhfUv0spHCY

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS - 在正确的范围内评估指令的选项 的相关文章

随机推荐

  • QueryDSL 条件排序依据

    我想翻译原生sql 例如 ORDER BY currency EUR DESC money DESC 进入查询DSL orderBy qItem currency eq EUR desc qItem money desc 然而它抛出 org
  • CMake - 安装第三方 dll 依赖项

    我正在使用一个预编译的第三方库 它有多个 DLL 一个用于实际的第三方 还有一些作为其自己的依赖项 我的目录结构如下 MyApp CMakeLists txt Root CMake file src MyCode cpp thirdpart
  • 如何在两个 WiX 项目中共享 WiX 片段?

    我们在 SomeDialog wxs 文件中有一个 WiX 片段 它提示用户输入一些信息 它在控制对话框顺序的 InstallerUI wxs 文件中的另一个片段中引用 当然 Product wxs是我们的主文件 效果很好 现在 我有第二个
  • 如何获取具有相同键值并以逗号分隔的对象

    我有一个对象数组 每个对象都有键和值 我希望如果对象具有相同的键 那么它们的值应该以逗号分隔相同键的所有值 我的html代码 p class item item id p
  • 归并排序的实现

    我是 C 新手 正在尝试开发合并排序的代码 我用大小为 5 的样本数组对其进行了测试 但代码给出的答案不正确 我不明白出了什么问题 这是我的代码 include
  • 确定数组是算术级数还是几何级数(来自 Coderbyte)

    就 coderbyte 而言 这是我的功能代码 但我有一种感觉 事情不应该这么复杂 我错过了一个简单的技巧吗 function ArithGeo arr var array type 1 if arr length lt 2 return
  • 不死对象 ([basic.life]/8):为什么允许引用重新绑定(和 const 修改)?

    不死 条款 我将 undead 子句称为 C 规则 即在对象销毁后 如果在同一地址创建新对象 则有时可以将其视为与旧对象相同的对象 该规则在 C 中始终存在 但附加条件发生了一些变化 我被迫阅读最新的不死条款这个问题 https stack
  • 如何将 HTML 内容传递到 MVC-Razor 中的部分视图(如“for”块)

    我在我的应用程序中使用 Chromatron 主题作为管理面板 有一个侧边栏小工具 其中包含 HTML 内容 通过一点 CSS 技巧 它可以显示完全不同的内容 section class sidebar nested h2 Nested S
  • 如何在opencv中从图片中检测文档?

    我正在尝试设计一个类似于 camscanner 的应用程序 为此 我必须拍摄一张图像 然后在其中找到文档 我从这里描述的代码开始 http opencvpython blogspot in 2012 06 sudoku solver par
  • 具有自定义变量索引的 Javascript 数组

    是否可以使用变量设置数组的自定义索引 例如 var indexID 5 var temp indexID new Array 上面的示例将数组索引设置为indexID并不是5 我尝试过使用 snd 报价但我没有任何成功 Thnaks 是的
  • CMake 删除“诊断中源代码文件的完整路径”选项 /FC

    如何指示 CMakeLists txt 中的 CMake 创建不包含 FP 的 Visual Studio 项目option https msdn microsoft com en us library 027c4t2s aspx Than
  • Groovy 类没有被收集,但没有内存泄漏的迹象

    我有一个 Java 类 它使用自定义类加载器动态重新加载 groovy 类 并且我看到一些奇怪的行为 某些类没有被收集 但随着时间的推移 它不会泄漏内存 例如 perm gen 不会无限期地继续增长 在我的java代码中 我正在加载这样的类
  • 设计线程安全类

    当阅读 MSDN 文档时 它总是会让您知道一个类是否是线程安全的 我的问题是如何设计一个线程安全的类 我不是在谈论用锁定调用类 我的意思是我正在为 Microsoft 创建 XXX 类 对象工作 我想说它是 线程安全 我需要做什么 使类线程
  • 为什么 JAXB 不为列表生成 setter

    当我从 XSD 生成 JAXB 类时 带有的元素maxOccurs unbounded 获取为它们生成的getter方法 但没有setter方法 如下 Gets the value of the element3 property p Th
  • 是否可以完全避免堆碎片?

    例如 如果动态内存的释放总是以与分配相反的方向完成 那么 是否能保证堆不会碎片化呢 从理论的角度来看 对于一个重要的应用程序来说 是否存在一些现实的方法来管理内存以完全避免堆碎片 堆中每次原子更改后 堆是否仍然没有碎片 对于重要的应用程序来
  • 为什么spring webflux默认选择jetty然后失败?

    我正在尝试运行基于 Spring boot 2 0 0 M7 的应用程序 以下是我的 build gradle 中与 spring 相关的依赖项 compile org springframework boot spring boot st
  • 拥有一个整数矩阵 MxN 如何将它们分组为具有增强几何形状的多边形?

    我们有一个给定整数的矩阵 从 1 到 INT MAX 的任何一个 例如 1 2 3 1 3 3 1 3 3 100 2 1 我们希望为矩阵中的每个唯一整数创建具有相同颜色的多边形 因此我们的多边形将具有如下所示的坐标 分组 我们可以生成这样
  • Spring HATEOAS 资源汇编器和具有许多变量的资源链接

    我正在使用 Spring HATEOAS 和 Spring 堆栈开发 REST API 但我在资源链接方面遇到了一些问题 这是我的代码 控制器 RestController RequestMapping apporteurs idInt r
  • 将多个表行合并到主表中

    大家星期一快乐 有问题希望你能帮忙 我有一个带有预算选项卡的预算电子表格 此选项卡上大约有 8 个表格 分为不同的类别 选项卡中的每个表都有完全相同的列 是否有非 vbscript marco 方法来创建主表 将所有表组合成不同选项卡中的单
  • AngularJS - 在正确的范围内评估指令的选项

    这里是有角度的新手 试图让我的头脑集中在指令 范围 嵌入等等方面 这就是我想要实现的目标 单元格中的每个表格都需要根据单元格内的值进行颜色编码 更改 bgcolor 或添加特定的 CSS 类 复杂的是 该单元格不具有裸值 它还有其他位和小玩