问题标签 [angularjs]

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 投票
3 回答
115616 浏览

angularjs - 无法访问 $rootScope

以下文件“有效”(即它不会引发任何错误):

但是这个

给出错误:

错误:未知提供者:来自 modx
源文件的 $rootScope: http
://code.angularjs.org/angular-1.0.0rc7.js 行:2491

怎么回事?

0 投票
7 回答
91179 浏览

javascript - 从遗留代码调用 AngularJS

我正在使用 AngularJS 构建与旧版 Flex 应用程序交互的 HTML 控件。Flex 应用程序的所有回调都必须附加到 DOM 窗口。

例如(在 AS3 中)

将会通知

从 JS 调整大小函数中,我想调度一个控制器可以听到的事件。似乎创建服务是要走的路。你能从 AngularJS 之外更新服务吗?控制器可以监听来自服务的事件吗?在一个实验中(点击小提琴),我似乎可以访问服务,但更新服务的数据并没有反映在视图中(在示例中<option>应该添加到<select>)。

谢谢!

0 投票
8 回答
28680 浏览

scope - 在 AngularJS 中,如何找到页面上的所有范围?

一旦我们有了一个范围,我们就可以导航到它的根并探索范围层次结构。

但是有没有一种直接的方法可以找到页面上的所有范围?

同样给定一个 HTML 元素,是否有直接的方法来找到它的封闭范围?

0 投票
2 回答
4709 浏览

ajax - 将数据从 angularjs 发送到 django

我正在使用 Angularjs 及其 $http 模块向 Django 服务器发送 POST AJAX 请求。这是一个例子:

问题是我在 Django 中得到了什么。无论我发送什么,数据始终是QueryDict对象的键,其值始终是一个空列表。

我不知道为什么。我错过了什么?

我使用几乎默认创建的 Django 应用程序和默认中间件。我只创建了一个视图并在 url config 中设置了一个 url。Django 的版本是 1.3。我将 Angular 的 $http 模块配置为始终发送包含 csrf 令牌的标头以满足 Django。

0 投票
3 回答
436 浏览

angularjs - 如何观察指令的嵌入元素?

我试图写一个分页指令,但要做到这一点,我需要知道有多少元素被嵌入,所以 HTML 看起来像这样

(这是一个简单的例子——被嵌入的代码可能是任意复杂的。)

该指令必须注意……某些东西,因此它可以重新计算页数。

编辑对不起,代码没有被称为代码。我希望上面的代码将列表中的名称分解为 10 长的页面,并添加一些不错的下一个/上一个按钮。

问题是当link指令的函数被调用时,div 还没有被展开。我通过推迟对 DOM 的更改来“修复”该问题——但这仅在一次有效。如果 $scope.searchResults(或嵌入代码观察到的任何其他内容)发生变化,我需要重新调整 DOM。我只需要知道那是什么时候。

0 投票
1 回答
14776 浏览

unit-testing - AngularJS 控制器单元测试 - 注入服务

一个关于 AngularJS 单元测试的简单问题。我有一个使用简单服务的控制器(改编自 angular-seed 项目)

服务.js:

控制器.js:

这在我的应用程序中效果很好。但是,我在单元测试框架工作中创建控制器时遇到了麻烦。我不知道我们如何注入“版本”服务(或创建实例)并将其传递给 $controller() 工厂 - 我假设这就是我想要做的?!这是最基本的规格:

控制器规范.js

运行测试工具产生: >test.sh

...失败(3.00 ms):错误:错误:未知提供者:versionProvider <-版本错误:未知提供者:versionProvider <-版本

我用 $injector/$provider 和 module() 尝试了各种方法,但无济于事。我确信答案很简单,但我看不到。

0 投票
2 回答
6875 浏览

javascript - AngularJS - 带有 Rails 3.2.3 的 $http POST

我正在使用 AngularJS 1.0.0rc8 使用 Crud 构建一个简单的联系人管理应用程序。

获取当前存在的联系人列表没有问题,但是在尝试将新联系人保存到服务器时,会创建一个新行 - 包含正确的 id、created_at 和 updated_at 值 - 但其余模型数据将被忽略.

这是显示我的意思的屏幕截图:

在此处输入图像描述

如您所见,数字 4 和 5 被赋予了 ID,但 first_name、last_name 和 phone_num 没有保存到数据库中。

我在处理对象的控制器中使用$scope.addContact函数。

这是联系人列表控制器的完整代码:

在 new-contact.html 部分上单击“保存”后,如果我检查它的内容,对象会记录到控制台,然后肯定会收集到值 - 请注意 Jimi Hendrix 在那里:

在此处输入图像描述

这是出现在 new-contact.html 模板中的表单:

addContact()函数在使用 JQuery 提交表单后触发:


(有些东西告诉我,我可能没有正确使用 ng-model 属性。)

关于我在哪里出错的任何想法?或者关于如何更好地实施这个设计的想法?

谢谢。


更新如下:

这是我整个更新的控制器代码 - 在 Sathish 的帮助下:

我现在收到错误消息:未知的联系人提供者。这是错误的屏幕截图

好的,我设法通过向主 App 文件提供ngResource来修复该错误。这是它的样子:

我收到一个新错误: 警告:无法验证 CSRF 令牌的真实性

好的,通过向 API 控制器添加回调也设法解决了这个问题: Rails 显示来自 RestKit POST 的“警告:无法验证 CSRF 令牌真实性”

现在我回到原来的问题。调用 create 方法时,会在数据库中保存一个新行,但不会保存模型数据。

太棒了...终于让这件事起作用了。

问题是$scope.addContact函数。它使用输入的“名称”而不是位于模板中的名为“newFirstName”和“newLastName”的ng-model绑定。

更新后的函数如下所示:

0 投票
1 回答
131 浏览

javascript - 如何使数据在外部可用

请在此处查看:http: //jsfiddle.net/9VaW2/1/

我想jData在外面有空

但是当我这样做时:

它给了我这个错误

ReferenceError:未定义 jData

编辑 更新小提琴

** 我想我找到了进行同步调用的解决方案..async : false。这样可行。我认为页面的加载速度比数据返回的速度要快....想知道是否有人有更好的解决方案**

0 投票
3 回答
609 浏览

javascript - 鼠标指令在嵌套的 AngularJS 环境中表现异常

我试图在 AngularJS 中实现嵌套树结构。它由所有由相同控制器类型管理的节点组成。你可以在这里找到一个例子:http: //jsfiddle.net/Yfmdy/2/

我的问题是,每次删除子节点并且修改其父节点的“子节点”数组时,所有父节点都会失去其 ng-mouseenter 和 ng-mouseleave 行为。

有谁知道该怎么做?我错过了什么吗?

0 投票
10 回答
414119 浏览

javascript - AngularJS - 使用 ng-model 时忽略输入文本框上的值属性?

如果我将简单的输入文本框值设置为下面的“bob”,则使用 AngularJS。ng-model如果添加了属性,则不会显示该值。

任何人都知道一个简单的解决方法,可以将此输入默认为某些东西并保留ng-model? 我尝试将 ang-bind与默认值一起使用,但这似乎也不起作用。