问题标签 [angularjs-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.
google-maps-api-3 - 如何在 AngularJS 中异步加载谷歌地图?
现在我已经找到了一种在Andy Joslin的帮助下在这个 SO initialize-google-map-in-angularjs中初始化 Google Maps 的方法,我正在寻找一种异步加载 Google Map Object 的方法。
我在phonecat项目中找到了如何执行此操作的示例。
注意这个例子中 JS 文件是如何加载的:index-async.html
在加载到我的程序中的 Jade Scripts 部分中,我尝试了:
当我这样做并加载地图页面时,我得到:
这就是现在将 Google 地图作为服务加载的方式:
看来这应该是从我记得读过的内容中返回的一个承诺。但是这个 AngularJS 对我来说很新。
angularjs - 从 AngularJS 指令访问属性
我的 AngularJS 模板包含一些自定义 HTML 语法,例如:
我创建了一个指令来处理它:
一切正常,除了attrs.tooltip
总是返回的表达式,undefined
即使tooltip
在执行console.log(attrs)
.
有什么建议吗?
更新:Artem 提供了一个解决方案。它包括这样做:
AngularJS + stackoverflow = 幸福
angularjs - AngularJS 指令不起作用
请在我写的指令下面找到,
我已通过以下方式将此指令添加到我的模块中,
我在我的模板中使用了这个指令,格式如下,
但是,我既没有看到任何警报响应,也没有添加课程。有人可以帮我吗?由于某些依赖性,我不想使用“ng-class”,但想为 ng-repeat 的第一个元素添加 class='active'。
任何帮助将不胜感激。提前致谢。
angularjs - 如何测试 AngularJS 指令
我正在开发一个将使用 AngularJS 的 Rails 3.2 应用程序。我可以让 Angular 做我需要做的事情,但是我很难弄清楚如何测试我正在做的事情。我正在使用guard-jasmine 使用PhantomJS 运行Jasmine 规范。
这是(相关的)html:
javascript(在咖啡脚本中)看起来像:
上面的代码完全符合它的意图。测试是问题所在。我根本无法让他们工作。这是我尝试过的一件事。发布这主要是为了在某个地方开始对话。
顺便说一句,我是 AngularJS 的新手,所以如果我没有遵循任何关于命名空间、模块等的最佳实践,我们将不胜感激。
我如何得到这个工作的测试?
javascript - 如何 $watch 指令中的多个插值属性?
我不明白如何在链接函数中同时观察多个属性,所以我创建了一个包含所有参数的对象并观察它。但是我注意到链接函数中的属性是一个字符串而不是一个对象,所以我使用了 angular.fromJson(val)。
您能解释一下如何查看多个属性吗?
谢谢
编辑:我不能使用 attrs 参数,因为我需要绑定属性——即它们需要插值。例如
我认为我必须使用 $watch
angularjs - 将AngularJS范围变量从指令传递到控制器的最简单方法?
将 AngularJS 范围变量从指令传递到控制器的最简单方法是什么?我见过的所有示例似乎都如此复杂,难道没有办法可以从指令访问控制器并设置其中一个范围变量吗?
javascript - Angular.js - 从输入中过滤无效字符的控制器函数在输入有效字符之前不会删除字符
我已经创建了我在这里遇到的问题的 JSFiddle:http: //jsfiddle.net/9qxFK/4/
我有一个输入字段,我只想允许使用小写字母、数字和连字符(该字段将用于 URL)。
为了做到这一点,我有以下 angular.js 控制器方法:
只有在无效字符之后键入有效字符时,才会删除无效字符。
谁能告诉我为什么这不起作用?
谢谢,斯科特
javascript - $watch'ing Angular 指令中的数据更改
如何$watch
在操作内部数据(例如,插入或删除数据)时触发 Angular 指令中的变量,但不为该变量分配新对象?
我有一个当前从 JSON 文件加载的简单数据集。我的 Angular 控制器执行此操作,并定义了一些函数:
我有一个<button>
正确调用该函数的$scope.add
函数,并且新对象已正确插入到$scope.data
集合中。每次点击“添加”按钮时,我设置的表格都会更新。
$scope.data
但是,当这一切发生时,我设置的要监视的指令不会被触发。
我在 HTML 中定义我的标签:
这与以下指令相关联(为问题健全而修剪):
我一"I see a data change!"
开始就收到消息,但在我点击“添加”按钮之后就再也没有收到消息。
$watch
当我只是从对象中添加/删除对象时,如何触发事件data
,而不是获取一个全新的数据集来分配给data
对象?
angularjs - AngularJS指令范围内的'@'和'='有什么区别?
我已经仔细阅读了有关该主题的AngularJS文档,然后摆弄了一个指令。这是小提琴。
以下是一些相关的片段:
从HTML:
/li>从窗格指令:
/li>
有几件事我没有得到:
- 为什么我必须使用
"{{title}}"
with'@'
和"title"
with'='
? - 我也可以直接访问父范围,而不用属性装饰我的元素吗?
- 文档说“通常希望通过表达式将数据从隔离范围传递到父范围”,但这似乎也适用于双向绑定。为什么表达路线会更好?
我发现了另一个显示表达式解决方案的小提琴:http: //jsfiddle.net/maxisam/QrCXh/