问题标签 [angular-controller]

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

angularjs - Directive、Link Function、Array、DataBinding 事物的顺序不明确

我有一个非常具有挑战性的问题,我什至不知道如何定义,所以我将举一个例子,希望你能解释我做错了什么。我的 HTML 是:

selectedChecks数组是这样定义控制器$scope.selectedChecks = {} 的:标记的结果是一列复选框这是我的指令代码:

问题是,当第一个复选框被选中时,警报将输出:“true undefined”形成从现在开始对任何复选框的第二次选中/取消选中,并且拥有输出将是:“true false”和“false true”

我的期望是这两个变量将是相同的,因为它们应该指向相同的值,因为: scope.bindModel被发送到指令selectedChecks[$index]并且scope.selectedChecks[i]应该是相同的。请帮助我了解我在这里做错了什么。似乎checkIt函数在 Angular 在复选框和数组之间进行数据绑定之前运行。

0 投票
1 回答
1425 浏览

angularjs - 要检测 AngularJS 中的点击,我应该使用指令还是控制器?

我想跟踪一个a,buttoninput[type="submit"]

使用附加到 body 标签的控制器对我来说很有意义。我需要跟踪每次点击以及每个日期和时间戳。我已经准备好 API,但我不知道如何收听点击。

我认为控制器是一个很好的方法,但我读过的一些东西是使用指令。基本上将body标签变成指令。

这对我来说真的没有意义,但我是新手。

而且,无论哪种情况,我如何检测点击?我正在尝试使用下面的指令,但它没有触发。说找不到domElement

这是我的指示。如果我这样做,我不需要控制器将点击写入我的 API 吗?

0 投票
4 回答
158 浏览

javascript - 使用控制器调用服务时获得两次结果

我正在构建一个简单的控制器,其中还包括一个服务。该服务返回一个 json。现在,我的问题是,当我通过控制器调用请求函数并打印出结果时,我得到所有对象两次。

所以这是我现在的代码:

json: http: //pastebin.com/dTcNDQeA

我想,问题一定出在 .success 附近,但我不知道具体原因。

我的解决方案:最后,当我在控制器中的服务调用周围包装一个函数时,它对我来说很好。还在想,为什么。

0 投票
0 回答
440 浏览

javascript - AngularJs:未捕获的 ReferenceError:$scope 未在调试器模式下定义

我有以下代码:

html


AngularJs


在这种情况下,没有问题。但是,如果您更改此行:

$scope.message = $scope.newMessage;

和:

debugger;

然后单击按钮,在控制台打开时,写入$scope,您将收到此错误:

Uncaught ReferenceError: $scope is not defined

所以我的问题是:

  • 为什么在$scope使用$scope函数内部时可以访问,而在调试模式下无法访问(当您不使用$scope函数中的某处时)
  • 在这种情况下如何使用$http,因为$http也无法访问

Jsfiddle

注意:也许这是重复的问题,但我没有找到这个问题的直接解释,以及解决方案

0 投票
1 回答
28 浏览

javascript - 将 controller 和 controllerAs 设置为相同的字符串

假设您有一个 AngularJS 指令,您希望在其中将控制器属性和controllerAs属性设置为相同的字符串。

前任。

以上是有效的并且有效,但是当将控制器控制器的值设置为相同的东西时感觉是多余的。有没有办法在一个属性中做到这一点?喜欢:

提前致谢!

0 投票
1 回答
106 浏览

angularjs - 在带有 Angular UI 路由器的控制器中使用 $scope 和“this”

关于$scopethis使用 ui-router 时,

如果我使用controllerAs语法,即:

然后在我的控制器中,我使用this而不是$scope. 所以我的登录控制器中有这样的代码:

但我也$scope用来收听来自 my 的全球广播事件$rootScope,因为如果我没记错的话,即使它们正在互换,this也没有属于 的方法。$scope

所以我正在收听一个事件广播$rootScope并调用其他一些控制器逻辑,例如func2,当这个事件被广播时:

如果我想func2在处理程序内部调用$on怎么办?我应该做一些约定,在我的控制器中初始化这样的东西吗?

我只是对最好的进行方式以及这里的一般约定感到好奇。$scope两者都使用和是否合适,两者this之间的主要区别是什么,因为它们可以互换?

0 投票
0 回答
202 浏览

angularjs - 将方法从指令传递到工厂

我正在尝试通过指令将控制器中定义的方法传递给工厂。我似乎无法完全理解范围界定或做到这一点的最佳方式。

HTML:

JavaScript:

0 投票
2 回答
9013 浏览

javascript - Angularjs - 控制器多次调用init()函数

我在制作 angularjs 应用程序时遇到问题。我创建了一个控制器并将其绑定在 routeProvider 中。使用这样的函数来初始化控制器的值。

像这样的 login.html

当我运行该应用程序时,它会像这样调用 init() 3 次。 登录

在这个 stackoverflow 中发现很多人也遇到了这个问题。所有这些都通过确保控制器不绑定一次以上(在 routProvider 和模板中)来解决,并检查模板中只有一个 ng-app。我的主要html是这样的。

对于我这样的主要应用程序。

这个控制器没问题,我只是想初始化一个文本,但是在一些需要向服务器端发出 AJAX 请求的控制器中初始化是不行的,可能会发出太多需要注意的请求。任何人都可以解决这个问题,请帮助我。谢谢。

PS1。我的实践基于 angular-seed https://github.com/angular/angular-seed

PS2。起初,我还使用了 jquery,它显示警告:尝试多次加载 angular。一旦我删除 jquery,它就不再显示警告,但它并没有解决我的问题

0 投票
1 回答
606 浏览

angularjs - 在 Angular 中显示来自 json 文件的数据

这个问题已经在另一个帖子上得到了回答。请参阅此处:在 Angular 应用程序中显示 json 数据

0 投票
1 回答
243 浏览

javascript - 尝试注入对 Angular 控制器的依赖项时出现未知提供程序错误

我正在尝试通过以下方式在我的 userMenuController 中注入“modal”指令:

这是modals.js:

在 app.js 上,app 的定义如下:

但我不断收到此错误:

我错过了什么?