问题标签 [angular-directive]

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 投票
1 回答
400 浏览

angularjs - 对于自定义指令,仅在传递表达式时才监视属性。

我有一个指令可以监视传入的属性,但是对于该属性,可以传递原始字符串值或表达式。如果传递了一个表达式,那么我需要观察它。但是如果传递了一个原始字符串,那么我真的不需要看这个属性。我想知道是否有一种标准方法可以根据是否传递表达式与字符串来选择性地监视属性?我可以在 attrs 中检查“{{*}}”,但不确定是否完整。

该指令只是这样做:

并且 my-drct 可以这样使用:

0 投票
2 回答
1130 浏览

angularjs - 以“Angular”方式为现有的 javascript 对象编写指令

我正在尝试制作一个封装pdf.js项目的viewer.js功能的 Angular 指令,因为我真的很喜欢他们的查看器的外观,但我希望能够从我自己的 Angular 绑定中传递变量。

现在,有两个类似 angular-pdf 的项目,例如 Sayanee 的项目 ( https://github.com/sayane/angularjs-pdf ),看起来它主要提供https://github.com/mozilla上的基本功能/pdf.js/blob/master/examples/text-selection/js/minimal.js和 Anrennmair 的项目,位于https://github.com/akrennmair/ng-pdfviewer

这些 pdf 查看器确实看起来不太好,我喜欢 pdf.js 查看器如何在页面视图中显示页面并让您轻松滚动浏览它们。我不需要打印、书签、附件、保存、打开等的所有功能,这样至少可以节省一些工作,但我的问题是:

如何将此查看器编写为指令?更具体地说,在对上一个问题的回答中,受访者表示,从角度来看,第一个 GitHub 项目设计不佳。这样做的正确方法是什么?我更愿意根据一些最佳实践在第一次写好它,但我一直无法找到任何关于这些实践在这个范围内的明确信息。

0 投票
1 回答
291 浏览

javascript - 如何在现有的父子指令元素之间动态嵌套指令元素?

背景:

我正在使用自定义 CMS,但我对代码库的访问权限有限。因此,在某些情况下,我计划使用 JavaScript 进行一些 DOM 操作。

问题:

我有一个容器指令,并且该容器具有普通的旧 HTML 项,但无法将这些项标记为来自服务器端的指令。此外,普通的旧 HTML 项目包含作为指令的子内容。

例子:

这是之前的:

以下是 DOM 之后的样子:

问题:

有没有人对注入 DOM 元素的最佳方法提出建议,这些元素是使用 JavaScript 的指令嵌套之间的指令?

一些想法:

我认为在编译之前通过 Angular 操作 DOM,但我想知道是否有办法在 Angular 的框架内执行此操作。

另一种选择是来自容器指令的后链接功能,我可以将 HTML 项包装在称为“容器项”的指令元素中,然后手动编译这些项。所以,我尝试了这个,但我得到了一个与内部已经包含指令的项目相关的错误。关于“ngTransclude”的一些事情是出乎意料的。我认为这与已经处理的内部指令有关。

0 投票
3 回答
3382 浏览

angularjs - 简单的自定义指令将 ng-attribute 添加到输入元素

我一直在尝试创建一个非常简单的指令来检查属性my-minlength是否为字符串(非空)以及是否为;将属性添加ng-minlength到输入元素。我觉得这应该可行,但它根本行不通。

我的指令

我的 HTML

编辑建议完全从可能的错误中剥离 - 仍然不起作用。

0 投票
1 回答
781 浏览

javascript - 一个 AngularJS 指令,用于在将非零和输入另一个字段时验证一个字段

我有两个表单字段 - 员工人数和工资总额。

用户不必为任何一个输入非零值。但是,如果他们为一个输入一个非零值,那么他们必须为另一个输入一个非零值,这就是我想要验证的。

这些字段成套重复 - 因此每个工资单都有一对,所以我不确定通过 ID 或班级获取它们是否有效。

我之前写过一些自定义验证指令,但从来没有一个检查另一个相关字段中的值。

0 投票
1 回答
1029 浏览

angularjs - 如何使用范围变量将值从控制器获取到指令中

我在 app.js 中定义了一个控制器和指令,并在 index.html 中使用它。

应用程序.js

索引.html

当我在指令中给出 alert(display) 时,它应该打印“world”。

0 投票
1 回答
769 浏览

angularjs - 自定义指令属性值未进入 templateUrl 回调函数

我想要帮助在 templateUrl 中获得价值。我已经经历过类似的问题,例如Set templateUrl base on attribute in directive

我的目标

我想在从HTML调用指令时设置一个属性。此属性将具有来自 json 对象的动态值。我想在指令的 templateUrl 函数中使用这个属性。

你可以在这里看到更多了解我的问题 - jsfiddle

我想根据属性值呈现复选框或单选模板。

请帮忙。

我知道ng-include方法,所以请建议替代解决方案。

0 投票
1 回答
148 浏览

html - 如何在指令模板中定义javascript

下面是我的选项卡式窗口,请建议我在指令模板内为以下菜单提供 javascript 的位置。

在此处输入图像描述

下面是我的指令

0 投票
1 回答
116 浏览

angularjs - how to apply element.bind for particular element only

below is my snippet in my directive which calls a controller

If I use above code It is calling changeclient() function for every element change. but my requirement is I need to call the changeClient function when I change the value in the select box only.please suggest me how to do this.

EDIT:

http://plnkr.co/edit/clTJjlZRlErskt6T0Foc?p=preview

please find the plunker code when I change some value in textbox or dropdown and click any where it is displaying alert box. But my requirement is the alert should be displayed only when I change dropdown value and click anywhere(not for textbox).

0 投票
1 回答
882 浏览

angularjs - 如何从一个指令到另一个指令通信

我有两个指令,一个用于 ng-grid,另一个用于分页,当我单击一个指令中的页码时,应该根据该指令更改 ng-grid 指令,我对此有何想法。