问题标签 [angularjs-compile]

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 回答
1280 浏览

angularjs - 没有 ng-if 的 Angularjs 指令条件渲染

我有一个指令,只有当我的身份验证服务告诉我时我才会呈现:

指令本身很空:

因为我的指令应该总是在我登录时呈现,所以 ngIf 逻辑应该在指令声明中,而不是在 ng-if 中(没有 ngIf 的指令将完全被破坏)。

知道我想要与ngIf? :

  • nfIf仅当解析为时才会出现在 DOM 中的指令true
  • nfIf解析为)时自动调用 $destroy false

我尝试使用compile功能和观察者观看security.isAuthenticated()但没有成功

0 投票
0 回答
180 浏览

angularjs - 编译不绑定属性(AngularJS)

我一直在尝试重构我的代码以更多地使用指令来使 html 更具可读性,我试图在 compile 方法中移动一些 html:

HTML:

data-ng-focus 和 data-ng-blur 中的方法在父控制器中定义。我正在尝试找到一种使用指令将它们绑定到 html 的方法。上面的代码似乎不足以做到这一点。我不知道该怎么办......有没有办法用指令完全构建html?

编辑:这是我正在尝试做的说明:

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

0 投票
1 回答
1253 浏览

angularjs - 为什么我不能使用 Angular 一个角度指令的 $set 函数来设置 ngPattern、ngMinlength 和 ngMaxlength?

这听起来很奇怪,但是,即使这是不好的做法或其他什么,我怎么能得到这个:

html:

看起来像这样:

目标:

如果不这样做:

.
.
.

我尝试过的一些事情- (plunkr)

假设这部分是恒定的:

.
.
.

以下内容的每次迭代(注释掉等):

和:

并尝试使用控制器

我不知道为什么这很困难。文档起初似乎足够详细,但天哪,一旦您进入战壕,这还不够。我看过每个 egghead.io 视频,读了很多东西……认真的。如果这是另一种语言,我现在就会教它。

0 投票
1 回答
75 浏览

javascript - Angular JS 指令定义 - 需要 ngModelController 以及自定义控制器

我正在尝试编写我的 Angular 指令,以便在其控制器的代码中拥有它们的大部分功能,而链接函数仅用于将两个不同的指令控制器绑定在一起。

当涉及到“需要”控制器和定义“控制器”时,我遇到了问题。我应该如何在链接函数中获得对我指定的控制器的引用?

示例代码(当然没有所有周围的 module.directive 东西)

“控制器”包含 ngModelController,但没有给我访问 CustomDirectiveCtrl 的方法。

如何从链接功能访问 ngModelController 和 CustomDirectiveCtrl?

0 投票
3 回答
956 浏览

javascript - 告诉子指令在父指令完成 DOM 操作后采取行动?

假设我们有一些嵌套指令:

假设他big-poppa想要创建一个所有子指令都可以共享的组件。放在控制器里就好了,但是这个组件需要DOM,所以需要在链接函数中构建。

然后假设baby-bird组件要从组件中读取。也许它想监听它的事件,也许向它发送一两个命令。挑战在于控制器触发 dom(第一个父项,然后是子项),而 post-link 方法触发另一个方向,因此执行顺序如下所示:

  1. bigPoppa 控制器
  2. babyBird 控制器
  3. babyBird 链接
  4. bigPoppa 链接

父母的方法在孩子的方法之后触发的事实是link我面临指令内交流挑战的原因。我希望父级构建共享 DOM 组件,但 DOM 构建应该发生在链接函数中。因此,父级在任何子级之后构建组件

我可以通过超时(粗略)或承诺(复杂/非惯用?)来解决这个问题。这是小提琴:

http://jsfiddle.net/8xF3Z/4/

这里有很多背景,但我的问题很简单:

在父指令运行其链接后功能后,是否有一种干净的方法可以在子指令中执行行为?

也许是一种使用方式priority,或者preandpost链接方法?

0 投票
1 回答
117 浏览

javascript - AngularJS:如何使指令从外向内评估?

可执行示例:

http://jsbin.com/secuz/5/edit?html,js,输出

细节

上述失败与我关于 Angular 指令处理顺序的假设相矛盾。我希望首先运行外部指令,然后执行向内传播。

我是否正确地认为这种无序评估是由于ng-if优先级高于ng-show?如果是这样,不应该只在两个指令在同一个元素上时才考虑优先级吗?

主要问题

我怎样才能确保执行总是从外到内?我是否需要对我使用的所有指令给予相同的优先级?

编辑:

尝试了另外 2 个场景:

  • 如果两者都是ng-ifs,那么传播是从外向内发生的,正如预期的那样:

[[ '1 if', true ], [ '2 if', true ], [ '1 if', true ], [ '2 if', true ]]

  • 然而,两个ng-shows 表现出违反直觉的行为:

[[ '2 show', true ], [ '1 show', true ], [ '2 show', true ], [ '1 show', true ]]

0 投票
0 回答
198 浏览

javascript - 从 angularjs 版本 1.2 升级到 1.3 时出现奇怪的错误

我正在尝试升级到 angularjs 1.3 并遇到此错误:

我确实加载了“ngSanitize”,并且没有文件丢失错误......我错过了什么吗?

这也与 1.2 分支完美配合。

提前致谢!

0 投票
1 回答
235 浏览

angularjs - 使用 $compile 在新范围内新创建的指令不会 ng-animate

我有一个switcher指令,它有一个创建新范围的方法,并$compile在其element上使用另一个指令替换它lister

例如,该lister指令包含一个在新作用域上迭代的 ng-repeat。

我试图在新创建的lister指令使用ng-enterng-leave类创建后立即对其进行动画处理,但它没有任何效果,或者看起来如此。

是否可以为使用动态创建的指令设置动画$scompile?如果是这样,我错过了什么?

代码在这个 plunkr中。

0 投票
1 回答
789 浏览

angularjs - 带有指令的元素在单元测试中没有正确编译

我的指令在浏览器中运行良好。这只是我似乎无法工作的单元测试。该指令创建一个简单的滑块,并在范围上设置一些值,包括min.

在单元测试中, $compile(element) 似乎只是将其包装在 jqlite 中,而没有对其进行任何其他操作。好吧,它显然也给了它一个范围,但范围上什么都没有。该模板也未应用。

我的单元测试:

这个的控制台输出是:

我有一个带有整个(稍微清理过的)代码的 JSFiddle,但它神秘地甚至没有通过 $compile,这与我在本地遇到的问题不同。不确定 JSFiddle 是否有用,因为现在我有两个神秘的问题而不是一个。

0 投票
2 回答
2687 浏览

angularjs - 必应地图上带有 Angular 指令内容的自定义图钉

我正在使用 Bing Maps AJAX 控件来显示地图。我已经为我想放在地图上的图钉创建了一个 Angular 指令:

在我的 Angular 控制器中,我设置了地图,然后将 (a) Pin(s) 添加到它,如下所示:

不幸的是,但很明显,我的自定义图钉没有显示在地图上,因为“htmlContent”部分是由 Bing 服务动态注入到 DOM 中的。我已经尝试了很多 Angular 的 $compile 服务,但我不知道如何让它工作......