问题标签 [controlleras]
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.
javascript - 如何使用 controllerAs 语法实时更新另一个角度控制器
我目前正在尝试使用来自一个控制器的服务从 Web API 中检索行计数值,然后在从数据库中检索到该值后更新另一个控制器的变量——同时避免使用 $scope 或 $rootScope。
下面是 Controller1 - 当服务中的值更改时,此控制器需要更新其变量。目前它运行正常,但我想避免使用 $scope 或 $rootScope:
服务 - 我想避免在这里使用 $rootScope.$broadcast :
下面是 Controller2 中的一个函数,用于更新服务中的值 - 我希望能够在执行此操作后立即更新 Controller1 中的值:
angularjs - 使用 angularjs“controllerAs”语法时,拥有一个容器对象仍然是一种好习惯吗?
我最近发现了 controllerAs 语法,我想知道它是否排除了将范围变量包装在对象中以获得引用的需要。
抱歉,我可能没有问清楚,但我的意思是以下两个声明彼此一样安全,还是在使用 controllerAs 时我仍然应该使用模型对象以避免嵌套范围的问题?
旧方法 -
控制器作为 -
typescript - 将数据从调用控制器传递到 ngDialog 的最佳方法 - 检查我的代码
我正在使用 ngDialog 来显示/更新/删除详细记录。我的代码工作正常,但我不喜欢这样使用 $scope 的方式。$scope.newContact = this.newContact;
我想使用控制器或控制器作为语法,但不能让它工作。由于我使用的是 Typescript,我不喜欢这种 $scope 注入。任何建议将不胜感激。
// 更新:发布详细代码以进行澄清 我的场景是这样的: - ContactController 填充联系人列表 - 用户单击联系人或单击添加新 - 联系人控制器将显示 ngDialog - 用户更新联系人详细信息并按保存然后ContactController 被 ngController 回调,contactController 将更新列表。我只是希望能够在不使用 $scope 混乱的情况下将 this.newContact 传递给 ngDialog!
这是我用于上述场景的控制器代码:
}
这是我的模板:
angularjs - (Angular)传递控制器实例以隔离范围
虽然下面的代码“有效”,但肯定感觉非常错误。有没有“最佳实践”的重构方式?问题是我将控制器的一个实例传递给一个隔离范围指令
(注意:我不能在指令中使用它:
控制器:'ViewController',controllerAs:'viewCtrl',
因为我需要相同的控制器实例..)
可能只是我一开始没有正确设置它,但很想知道是否有一种“重构”它的好方法
UI-路由器配置:
指令
javascript - 从模板angularJs中的控制器填充id属性的值
我正在写一个directive
with angularJs
,下面有一个简单的模板html template
和一个contorller as c
模板:
但问题是即使<p>
测试标签显示正确的值,input id
也没有得到值。
我已经尝试过这些id="c.inputId()"
, id='c.inputId()'
, id="{{c.inputId()}}"
, id='{{c.inputId()}}'
,但它们都不起作用。
任何想法我的代码有什么问题,我该如何解决?
编辑1
我想我最好解释一下documnet.getElementbyId
返回null ..也许这是我的错误,我没有提到它是为了使问题简单,我没有意识到documnet.getElementbyId
返回null。
directive - 如何从指令控制器访问 ngModel
我需要在指令控制器内进行一些检查并设置 ngModel.$setValidity('some', false),但ngModel is not defined
出现错误。注入 ngModel 没有帮助......
PS 我知道我可以访问它link
,但是是否可以在指令中访问 ngModel 控制器controller
?
angularjs - 带有自定义指令的 Angular ControllerAs 语法
您好,我在上传图片时遇到问题。我使用打字稿,所以我尝试调整fiddle
. 我在互联网上找到了,但问题是我没有使用范围,因此没有从指令中修改字段“myFile”。我使用了bindToController
andscope:{myFile'='}
但它不起作用。
谢谢你的帮助
angularjs - 使用控制器作为内部指令模板时访问控制器的 this
不使用孤立范围时如何访问This
指令及其模板内的控制器?
angularjs - angularjs 指令单元测试因controllerAs、bindToController 和isolateScope() 而失败
我正在尝试对具有双向绑定属性 (=) 的指令进行单元测试。该指令在我的应用程序中有效,但我无法进行测试双向绑定的单元测试。
我一直试图让这个工作好几天。我已经阅读了许多示例,这些示例使用了我想使用的一些但不是全部功能:controllerAs、bindToController 和isolateScope()。(忘记我也需要的templateURL。如果我能做到这一点,我会补充一点!:)
我希望有人能告诉我如何显示隔离范围中反映的父范围的变化。
这是一个包含以下代码的 plunkr:
http://plnkr.co/edit/JQl9fB5kTt1CPtZymwhI
这是我的测试应用程序:
这是规格: