问题标签 [angularjs-components]
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.
angularjs - 具有 ui-router 解析的 Angular 1.5 组件:未知提供者
我在将控制器转换为为 Angular 2 准备我的应用程序的组件时遇到了问题,但问题是迁移不顺利,我有 ui-router 在状态之间路由并在一些控制器中使用解析,带有控制器的版本正在工作,但组件的版本现在完全可以工作,我遵循了很多指南,似乎我在代码方面做得很好,但对我不起作用。
我有以下带有控制器的模块:
控制器:
上面的代码运行良好,但是在将其作为一个组件后,它变成了这样:
组件:
但现在它不起作用并给我以下错误:
我在bower.json 中的依赖项:
知道什么问题,我错过了什么吗?
angularjs - 在 AngularJs 中设置全局常量
我正在尝试在 Angular js 中为应用程序创建常量 js 文件。我正在使用下面的代码来实现整个应用程序的常量。它工作正常。
我关心的是在 app.js 文件中我只想编写路由,对于常量我想编写单独的文件,我将为我的应用程序中的所有控制器调用同一个文件。
对于整个应用程序可能有 200 多个我要声明的常量,所以我想让它成为单独的文件或拆分常量文件以供控制器明智使用。
请指导我哪种方式易于维护。
提前致谢
javascript - Angularjs将简单的字符串传递给组件
我拼命尝试将一个简单的字符串传递给 AngularJS 组件,我有以下 angularJS 组件:
async-typeahead.componenet.js:
并按照 html 调用组件:
'val' 只是来自预输入的输入。
我已经尝试过objectType={{ This is just a string }}
, objectType="This is just a string"
并且objectType=This is just a string
我还尝试将绑定从 '=' 更改为 '@' 或 '>' 结果是一样的:
每当我查看控制台时,我总是会得到:
异步预输入输入为:df
异步预输入对象 kes 是:[37,43,49]
async-typeahead 类型为:未定义
我究竟做错了什么?如何将简单的字符串传递给 angularJS 组件?
angularjs-components - AngularJs 1.5 - 无法通过父组件在两个组件之间进行通信
我按以下顺序有 3 个组件:1 个父组件和 2 个子组件。我需要在父组件中运行一个函数,方法是从两个子组件中的任何一个启动它。
两个子组件js
文件如下所示:
父组件:
在每个子组件模板中都有一个应该运行父函数的按钮switch
,如下所示:
代码不起作用,有什么建议吗?
angularjs - 在指令 AngularJS 1.5 中需要父组件
如何在指令中要求组件?您可以在另一个指令中要求一个指令的控制器,也可以在另一个组件中要求一个组件。但是如何在指令中要求组件控制器?
指示:
html:
我收到以下错误:
angularjs - 用 1.5 引用 Angular 表单
我有一个角度指令 (1.4) 我正在切换到组件语法 (1.5)。如果单击表单重置按钮,现有代码将调用 form.$setPristine()。当我将它切换到一个组件并尝试从 jasmine 测试中调用时,表单变量是未定义的。
测试文件:
表单.html
错误:
angularjs - 将解析与 angularjs 组件一起使用
我正在尝试在呈现页面之前解析客户列表。
这是状态提供者参考,我有解决方法。
其次是组件,它应该从resolve中调用#test。它应该做的就是在控制台上打印“nihao”这个词。
但是,我不断收到此错误:
我可以看到它正在运行解析函数,所以它可以工作,但它不会注入方法!有任何想法吗?
angularjs - Angular 1.5 从父组件中清除子组件
带有用户输入表单的 Angular 1.5 应用程序。我们有一个称为组合框的自定义共享组件。它本质上是一个下拉选择器,但具有 css 类和许多用于以不同方式显示的花里胡哨(提前输入、多选等),所有这些都基于父级设置的属性(输入)。
一旦在组合框组件中选择了一个值,它就会在选择时向父级触发一个事件。父级将存储有关所选元素的信息。组合框子项还设置了显示当前所选项目的显示。
这一切都很棒。从父级到子级的单向数据流,以及发布回父级的单个事件。但是,现在我希望父母能够清除子组合框。用户可以点击“重置表单”按钮。我不确定执行此操作的最佳方法。
- 如果我可以重新绘制子组件并使其再次 $onInit,这将起作用。
- 我可以将 boxValue 存储在父级中,但这需要我采用组合框中使用的大量共享逻辑并将其复制到许多表单/页面上。
combo-box.component.html 的 HTML 模板(这只是其中的一部分,用于显示由下拉选择填充的输入框):
组合框.component.js
javascript - 如何在组件 DOM 节点上切换类
我目前正在将一些旧指令重写为新的组件语法。我的一个指令需要在 DOMnode 上切换一个类。
现在,当我将其转换为组件时,此功能不再起作用。是否有一些我没有找到的新功能?或者这根本不再可能?
感谢您抽出宝贵的时间!
要查看完全工作(或更好,不工作)的示例,您可以查看此代码段,或前往Plunkr
javascript - Angular JS - 解决对象无法在控制器中检索
我在将resolved
对象注入controller
. 我正在使用基于 AngularJS 1.5 组件的 + ES6 语法
继承人的routes.js
文件:
我想得到resolved object
garage
它并将其注入我的,但当我注入它之后GarageViewController
,不知何故garage
似乎是未定义的。
我是错过了一些过程还是只是对某些事情感到困惑,我不知道我做错了什么。
请帮助,建议非常感谢。
这是garage.service.js
:
我曾经$q
创建过promise函数getGarage(id)
用于routes.js
这是GarageViewController.js