问题标签 [isolate-scope]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
236 浏览

angularjs - AngularJs 指令隔离范围

我有一个使用自定义指令的简单应用程序,但我在尝试使用隔离范围时完全迷失了方向,请看看并告诉我要写什么来填补空白。

该应用程序的想法是什么!

a) 应用程序控制器使用 $http 从服务生成 menu_list 项目,然后使用 found 函数搜索并返回 foundItems 数组(这一切都完成了!)。
b)该指令有一个有序列表循环抛出找到的项目并显示它们加上每个项目旁边的按钮以在需要时将其删除(这仍然需要)。

我错过了什么:

我的directive.html 中有三个地方我评论说<-- <== 在这里说什么<== <== -->

在我的 index.html 中我也评论了 <-- 不确定 --> 以及在我的 app.js 中评论了 <-- 不确定 -->

请看看这5个地方,告诉我该怎么做!

索引.html:

指令.html:

应用程序.js:

注意:稍后对 remove 方法进行错误编码并更新问题,但现在它不是必需的。先感谢您!更新:对服务和控制器上的删除方法进行编码。

0 投票
3 回答
75 浏览

angularjs - 如何使用隔离范围设置范围参数

我以为我已经掌握了使用自定义指令的孤立作用域,然后遇到了这个问题,我已经为此苦苦挣扎了 3 个小时:

一旦为指令创建了隔离范围,我认为您可以在or函数中设置任何范围数据(在本例中greeting) 。但是HTML 中的引用不起作用,即使它在通过控制台检查时显示在范围内?controllerlink{{greeting}}greeting

我认为新的隔离范围将分配给指令myDir,并且在该范围上定义的任何内容都可以在 .html 的 HTML 内容中访问<my-dir>。显然,我的理解有差距。

请问有什么想法吗?

Plunker:这里

HTML:

JS:

0 投票
0 回答
31 浏览

angularjs - 角度指令范围被覆盖

我正在尝试将隔离范围用于具有两种数据绑定的指令。请参考我下面的代码:

我的问题是最初一切正常,但我的指令保留了最后一个指令元素的范围。如果我对任何先前的元素执行任何操作,则会更新最后一个元素。

0 投票
1 回答
747 浏览

angularjs - AngularJs 中第一次加载时未初始化的指令参数

我已经创建了一个下拉指令,我试图在将参数传递给指令时分配方法,我将从控制器调用这些方法。但是在第一次加载时,我没有在控制器中获得分配方法,但是当我在第二次加载时分配它(即在下拉更改事件中)并且它工作正常。

首次加载后,如何在调用控制器中获取首次加载指令的方法。

这是指令:

这是调用控制器代码:

查看我使用指令的位置:

场景:如果在下拉更改事件的指令中第二次调用分配的方法,那么我可以在传递参数时获取这些方法。

IE

那么,我怎样才能在第一次加载指令时获得传递参数中分配的方法?

0 投票
2 回答
382 浏览

html - AngularJs中的嵌套指令不更新视图(DOM)元素

我制作了一个嵌套指令,并尝试从 html 视图中调用它,但没有更新 html 中的视图元素。

我可以从调用控制器获取更新的值,但在视图级别看不到更新的效果。

这里是 Js

这是HTML:

小提琴在这里。

注意:我也尝试在指令和控制器中使用$watchand$timeout但没有奏效。

0 投票
1 回答
265 浏览

angularjs - 具有隔离范围的 AngularJs 服务

在我的 Angular 应用程序中,我有一个服务,它存储一个配置结构,供我的应用程序的各个组件使用。在通过函数从文件.runguiConfigService读取配置并能够通过函数返回某个组件的数据的阶段中:.jsonsetGuiConfiggetGuiConfig

我的问题:

在我的组件的控制器中,我希望能够操纵从getGuiConfig我的服务功能返回的任何内容,比方说,我想删除属性的最后一个条目FunctionIds。这种操作不仅会影响我的控制器中的对象,还会操作guiConfig我的服务中的 -Object。

例如,请参阅此 JsFiddle

我已经尝试过的:

  • 首先我想,问题是我调用了一个回调函数而不是直接返回对象,但是我试过了,它似乎也不起作用。
  • 发送我的服务guiConfig对象的副本JSON.parse(JSON.stringify(guiConfig[buzzword]))是有效的,但在我看来这不是正确的做法。

有没有一种好方法可以从 service 中的对象返回数据,而不引用实际对象?

0 投票
0 回答
111 浏览

javascript - 如何从角度组件访问孤立的范围变量

考虑到这种情况,我依赖 fileupload 组件,该组件在 3 个地方以相同的形式使用,并以绑定值区分。

共有 3 个组件在使用中,通过一个变量绑定来区分

在那个特定的隔离控制器中。有值被设置。

我如何才能在特定范围内独立获取这些值?

例子:

组件由一个输入字段组成

内部控制器

vm.input现在要求如果全部输入,则需要形成验证。那么,我怎样才能单独获取这些并进行测试呢?

约束vm.input已经具有函数绑定。无法更改其名称

0 投票
3 回答
615 浏览

angularjs - 隔离范围绑定类型

根据AngularJS Developer Guide - Directives "Isolating the Scope of a Directive",范围绑定可以在 3 种类型中完成

=,@&

根据本页中的“指令定义对象”部分,范围绑定可以在 4 种类型中完成

=, @,&<

即使在大多数在线文章中,孤立的范围绑定也只给出了 3 种类型。

哪个是对的?

0 投票
1 回答
546 浏览

angularjs - angularjs 指令单元测试因controllerAs、bindToController 和isolateScope() 而失败

我正在尝试对具有双向绑定属性 (=) 的指令进行单元测试。该指令在我的应用程序中有效,但我无法进行测试双向绑定的单元测试。

我一直试图让这个工作好几天。我已经阅读了许多示例,这些示例使用了我想使用的一些但不是全部功能:controllerAs、bindToController 和isolateScope()。(忘记我也需要的templateURL。如果我能做到这一点,我会补充一点!:)

我希望有人能告诉我如何显示隔离范围中反映的父范围的变化。

这是一个包含以下代码的 plunkr:

http://plnkr.co/edit/JQl9fB5kTt1CPtZymwhI

这是我的测试应用程序:

这是规格:

0 投票
1 回答
132 浏览

angularjs - AngularJs:检测来自隔离指令的父范围的点击

嗨,我有一个孤立的指令。我想检测是否已使用$scope.$parent对象单击范围。这可能吗。我正在尝试使用范围对象变量收听父范围上的单击事件...这可能吗?