带有 templateUrl 和 ng-repeat 的自定义指令

2023-12-04

我已经研究这个问题几个小时了,终于我在 plunker 上复制了它.

这是我的问题:

当使用外部资源作为模板的自定义指令与 ng-repeat 结合使用时,模型更改时视图无法正确渲染。

在我的示例中,单击链接将替换模型,但旧数据尚未清除。

如果我使用template: 'stringTemplate'代替templateUrl: 'urlToTemplate',它工作得很好。 还是不知道是bug还是什么...

部分代码:

angular.module('test', [])
    .run(function($rootScope) {
        $rootScope.topics = [{
            content: 'Click here to change reply',
            replys: [{
                content: 'Reply test...',
            }]
        }];
    })
    .directive('topic', function() {
        return {
            replace: true,
            restrict: 'E',
            templateUrl: 'topic.htm',
            link: function(scope) {
                scope.reply = function(input) {
                    scope.topic.replys = [{ content: '"Reply test..." should be replaced, but it\'s not!' }];
                }
            }
        };
    })
    .directive('reply', function() {
        return {
            replace: true,
            restrict: 'E',
            // template: '<div><div ng-bind="reply.content"></div></div>' //this works fine
            templateUrl: 'reply.htm' // same content
        };
    });

我做了一些研究,看来你并不孤单地遇到这个问题:

https://github.com/angular/angular.js/issues/2151

用户 ishw 提到,作为一个快速修复:

“对于那些可能还没有意识到的人:这是因为你的 ng-repeat 位于指令模板中的根元素上。将 ng-repeat 包装在任何元素中就可以了。”

我用你的 plunkr 尝试了这个,它似乎有效:

  <div> 
      <div class="topic" ng-bind="topic.content" ng-click="reply()"></div>
      <div ng-repeat="reply in topic.replys"><reply></reply></div>
  </div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有 templateUrl 和 ng-repeat 的自定义指令 的相关文章

  • 显示具有多个父代的 D3 树

    我目前有this http bl ocks org mbostock 4339083图已实现 我希望在描述具有多个父节点的子节点时保持结构和可折叠性 有没有办法做到这一点 我研究了力图 但我也想保留一组层次结构 这意味着 1 级的父级可以有
  • 使用 Angular 指令禁用文本选择

    我正在学习 JavaScript 和 AngularJS 我想使用 Angular Directive 禁用文本选择 我有该函数的 JavaScript 代码 function clearSelection if document sele
  • 在版本 4.4.6 中禁用 ckeditor 上下文菜单

    我在 Rails4 项目中使用 ckeditor 我尝试了 ckeditor gem 和 ckeditor rails gem 来提供 ckeditor 库 这里有多个帖子 人们希望删除 ckeditor 上下文菜单 以便可以显示本机浏览器
  • nodejs (libuv) 事件循环是否在一个阶段(队列)中执行所有回调,然后再进入下一阶段或以循环方式运行?

    我正在研究 Node js 中 libuv 提供的事件循环 我遇到了关注 Deepal Jayasekara 的博客 https blog insiderattack net event loop and the big picture n
  • javascript 选择自定义光标 (svg)

    我正在动态地将光标更改为悬停时的本地 svg element on mouseover function this css cursor url svgs pointer svg 9 30 auto 工作正常 但我想选择该 svg 来操纵其
  • 如何通过单击链接来更改 div 的内容?

    这是我的网页的 修改后的 jsfiddle 它还有很多 而且定位是正确的 与此相反 http jsfiddle net ry0tec3p 1 http jsfiddle net ry0tec3p 1 a href class btn1 st
  • React Router v4 不渲染组件

    React Router v4 渲染组件存在问题 在应用程序初始加载时 它将呈现与 URL 相对应的正确组件 但是 任何后续的组件Link单击不会呈现所需的组件 图书馆 反应路由器 4 2 2 https reacttraining com
  • 计算三次贝塞尔曲线的弧长、曲线长度。为什么不工作?

    我正在用这个算法计算弧长 三次贝塞尔曲线的长度 function getArcLength path var STEPS 1000 gt precision var t 1 STEPS var aX 0 var aY 0 var bX 0
  • IE 中的 XPath 查询使用从零开始的索引,但 W3C 规范是从一开始的。我应该如何处理差异?

    问题 我正在转换目前仅适用于 Internet Explorer 的相对较大的 Javascript 代码 以便使其也适用于其他浏览器 由于代码广泛使用 XPath 我们做了一些兼容性功能以使事情变得更容易 function selectN
  • 如何使用 Javascript 设置查询字符串

    有没有办法使用 javascript 设置查询字符串的值 我的页面有一个过滤器列表 单击该列表时 它将更改右侧的页内结果窗格 我正在尝试更新 url 的查询字符串值 因此如果用户离开页面 然后单击 后退 按钮 他们将返回到最后一个过滤器选择
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 如何正确取消引用然后删除 JavaScript 对象?

    我想知道从内存中完全取消引用 JavaScript 对象的正确方法 确保删除时不会在内存中悬空 并且垃圾收集器会删除该对象 当我看这个问题时在 JavaScript 中删除对象 https stackoverflow com questio
  • 使用 Jade 评估自定义 javascript 方法 (CircularJSON)

    我想通过 Jade 将一个对象解析为客户端 JavaScript 通常这会起作用 script var object JSON parse JSON stringify object but my object is circular ht
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 有没有办法使用 ko.observableArray 作为地图?

    有没有办法使用ko observableArray http knockoutjs com documentation observableArrays html像地图 字典一样 例如 var arr ko observableArray
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • 如何通过索引访问 JSON 对象中的字段

    我知道这不是最好的方法 但我别无选择 我必须通过索引访问 JSONObject 中的项目 访问对象的标准方法是只写this objectName or this objectName 我还找到了一种获取 json 对象内所有字段的方法 fo
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容

随机推荐

  • 在 JSF 组件中使用 render 是否足以安全地防止伪造的操作调用?

    我们一直使用自定义 Secure 拦截器来保护我们的支持 bean 方法 以防止伪造该方法的调用 但最近 我突然意识到 如果调用操作的组件未呈现 则这些方法将无法访问 据我了解 JSF 将生成视图 并且如果组件不是根据权限呈现的 例如带有
  • Azure 事件中心是否保证至少一次传递?

    我正在构建一个 Azure Web 应用程序 我想将活动日志发送到 Azure 事件中心 如果应用程序主机和事件中心之间的连接丢失会发生什么 事件中心客户端是否实现某种本地队列 TLDR 是的 EventHubs 提供至少一次交付 Even
  • ASP.NET:自定义动态填充站点地图(SiteMap Provider)

    我正在尝试写我自己的第一个SiteMapProvider子类 它旨在使用一堆不同的数据库查找动态填充 就像我在网上找到的所有示例一样 然而 有很多事情我不太清楚 这是我的第一个问题 Why is StaticSiteMapProvider几
  • 函数内部由 ddply 中指定的变量组成的子集

    通常 我需要通过对应用 ddply 的另一个 data frame 进行子集化的变量来对函数内的 data frame 进行子集化 为此 我再次显式地在函数内写入变量 我想知道是否有更优雅的方法来做到这一点 下面我举了一个简单的例子 只是为
  • 如何使用 matlab 从 yuv 420 视频剪辑中提取帧并将它们存储为不同的图像?

    如何从 yuv 420 视频中提取帧 假设我想将它们存储为静态图像 如何 这是来自MathWorks 文件交换那应该做你想做的事 将 YUV CIF 4 2 0 视频文件转换为图像文件 by Da Yu 功能loadFileYuv从上面的提
  • 中的每个文件创建 FormData 实例

    我正在尝试使用输入文件multiple属性并拆分 formData 这样我就可以为多文件元素中的每个文件提供一个 formData HTML
  • 使用 ITextSharp 创建可填写的 PDF 表单

    我使用 Acrobat Adob e 8 创建了一个包含可填写字段的 PDF 文件 可以使用 ITextSharp 而不是 Adob e 进行编程吗 注意 我并不是指使用 ITextSharp 填写 PDF 而是我想create使用 ITe
  • 将时区添加到 data.table 中的 POSIXct 对象

    我有一个 data table 对象 其中日期和时间列存储为 IDate ITime 对象 我还有一个时区列 其中时区以字符形式给出 现在我想创建一个使用 POSIXct 格式的 DateTime 列 但是我不知道如何向对象添加正确的时区
  • 有没有办法判断 python 是否使用“--with-threads --enable-shared”进行配置和编译?

    这是针对 Debian Squeeez 上的 Python 2 6 6 我试图查明 debian 附带的二进制文件是否配置了以下标志 with threads enable shared 就好像它们不是一样 我需要自己从源代码编译和安装 w
  • Solidity 中的动态数组

    我想声明一个简单的数组 动态列表 一个set函数推入一个字符串和一个get函数返回动态数组中保存的所有字符串 我搜索了很多但找不到这个简单的东西 这是我的解决方案 你需要experimental ABIEncoderV2返回字符串数组 pr
  • 如何在 DASH 内容的

    我已使用以下方式在网页中嵌入了 DASH 视频
  • ID/类别选择器

    我对 jQuery 选择器有一些问题 假设我想选择 elementID 但是elementID是一个变量 除了以其他方式执行此操作之外 还有其他可能性var variable elementID variable 我的意思是没有指定 还有其
  • 扩展并仅指定已知属性?

    我试图提供一个接受给定类型的映射的接口 并将其用于运行时逻辑和编译时类型 就像是 type SomeType a string b a string b string magicalFunction a 1 1 return type is
  • 在 __init__ 中使用继承的类方法

    我有一个由几个孩子继承的父类 我想使用父母的初始化其中一个孩子 classmethod初始化器 我怎样才能做到这一点 我试过 class Point object def init self x y self x x self y y cl
  • 如何像Xcode一样绘制带有蓝色色调的分段控件?

    我正在尝试重新创建 Xcode 中使用的分段控件 其中图像用蓝色绘制 例如在界面生成器中 到目前为止我有一个习惯NSSegmentedCell压倒性的 void drawSegment NSInteger segment inFrame N
  • 如何使用 Javascript 从 Google Api 检索服务帐户 OAuth2 令牌?

    我需要使用 google 项目服务帐户来使用 JavaScript 访问 google API 为了做到这一点 我需要 OAuth2 到 google API 服务器来获取身份验证令牌 据我所知 Google 提供了一个用于节点服务器的库
  • 检查字符串中是否有以字符 @ 开头的单词

    您好 感谢您花时间调查此问题 我正在开发一个评论系统 而不是使用嵌套评论 我只想添加 user 方法进行回复 举例来说 我输入了以下评论 moonwalker Thanks again for your reply 我正在寻找一个函数来检查
  • Git WebHook 不会拉取 (PHP)

    我有一个 PHP 文件 hook php 看起来像这样
  • 如何在Python中保存二维数组(列表)?

    我需要将表示游戏世界中的地图的二维数组保存到配置解析器中 数据如下 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 举个例子 我显然可以保存数据 但在读回数据后无法将其从字符串转换回列表 顺便说一句 我不介意是否必须使用 txt
  • 带有 templateUrl 和 ng-repeat 的自定义指令

    我已经研究这个问题几个小时了 终于我在 plunker 上复制了它 这是我的问题 当使用外部资源作为模板的自定义指令与 ng repeat 结合使用时 模型更改时视图无法正确渲染 在我的示例中 单击链接将替换模型 但旧数据尚未清除 如果我使