问题标签 [angularjs-1.5]

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

javascript - mdSidenav 服务在 Angular 组件中时找不到组件

我试图弄清楚为什么不能从自己的组件的控制器中找到.component()具有指令的 Angular。<md-sidenav>Angular 抛出以下错误:

找不到句柄菜单的实例

整个组件是:

...它的模板是:

如果我将整个移动<md-sidenav>到我的index.html(即在任何指令/组件之外),$mdSidenav可以找到整个 Angular Material 组件。

这里出了什么问题?我错过了一些细节吗?

我可以确认整个组件都已渲染。即模板定位注入成功

更新

我可以弄清楚问题出在哪里:它与组件生命周期有关。如果我$timeout在到达控制器代码后尝试访问所谓的 Angular Material 组件,$mdSidenav 可以找到该组件

如果问题是何时访问组件,如果是在初始化控制器时,我应该何时尝试访问 Angular Material 组件?

0 投票
1 回答
5183 浏览

angularjs - Unable to require directive in AngularJS 1.5 component

I've created a directive which works perfectly fine. Now after bumping angular to 1.5.0, I figured this directive is a typical example of what could be written using the new .component() notation.

For some reason, the require property no longer seems to work.

The following is a simplified example:

I also tried using require as a simple string:

and as an object:

I've looked at the docs for $compile and component, but I can't seem to get it to work.

How can I require other directive controllers in an AngularJS 1.5 component?

0 投票
0 回答
591 浏览

angularjs - Angular 新路由器现在是 ngComponentRouter。$componentLoaderProvider 的等价物是什么

有谁知道 $componentLoaderProvider 的新 ngComponentRouter 等价物来告诉路由器在哪里可以找到视图。我有一个位于应用程序根目录之外的主组件

app/components/home/home.html 以及以下 home.js

在上面的 templateUrl: 'app/components/home/home.html' 中,我认为应该可以省略。

以前版本的文档显示

但是它在 $componentLoaderProvider 上抛出一个错误,并且在通过 angular_1_router.js 文件进行搜索后,我找不到这样的提供者......有谁知道如何告诉 ngComponentRouter 在哪里可以找到组件的模板视图?

0 投票
1 回答
650 浏览

angularjs - 是否可以在 $resource 请求中发送主机名?

我正在使用 AngularJS 1.5 和 ngResource。我有一个对象数组,每个对象都包含一个我想在迭代中向其发送 HTTP GET 请求的 IP 地址。例如:

如果我使用 $http 服务并且只是连接 IP 地址,它工作正常。但是,我想使用 $resource 服务,因为我有一组操作,但是当我使用 $resource 这样做时,它不会将我的主机名/IP 地址视为参数。

我得到: XMLHttpRequest 无法加载http://:ip:49221/currentStatus

Plunker:http ://plnkr.co/edit/d9roMDWEbPpyG5upKSrv?p=preview

难道我做错了什么?

谢谢

0 投票
7 回答
58877 浏览

angularjs - AngularJS 1.5+ 组件不支持 Watchers,有什么解决方法?

我一直在将我的自定义指令升级到新的组件架构。我读过组件不支持观察者。这个对吗?如果是这样,您如何检测对象的变化?对于一个基本示例,我有一个自定义组件myBox,它有一个带有游戏绑定的子组件游戏。如果游戏组件中有更改游戏,我如何在 myBox 中显示警报消息?我知道有 rxJS 方法是否可以纯粹以角度来做到这一点?我的JSFiddle

JavaScript

HTML

0 投票
1 回答
389 浏览

javascript - Angular (1.5.0) ng-router 不工作

我正在使用angular、angular-animate、angular-route v.1.5.0、ui-grid v. 3.0.7 ocLazyLoad v. 1.0.9。

我收到此错误:

并且每个页面都在另一个页面下加载

图片

有什么建议吗?谢谢!

编辑

0 投票
1 回答
723 浏览

angularjs - AngularJS 1.5 中的 ngModel 控制器和 templateUrls

我们有以下场景:

有一个容器可以有 x 个输入元素 (x >= 0) 每个输入元素都使用普通的 ng-binds

在容器中有一个函数可以为每个包含的 ngModelController 添加一个 $parsers 和 $validators。

代码如下:

在“form-element”指令的链接方法中,我们这样调用: var controls = element[0].querySelectorAll('[ng-model]'), i, ngModel;

这在 AngularJS 1.4.x 下运行良好

在 AngularJS 1.5.x 中,它只有在输入指令中的模板直接通过 template: '...' 定义时才有效。如果我们使用 templateUrl: '...' 我们现在会遇到 ngModel 未定义的问题。在 controls[i] 中,我得到了正确的元素,并且有一个 ng-model 属性,但 AngularJS 1.5 似乎还没有编译该元素。

有没有更好的方法来操作子元素的 ngModels?

0 投票
1 回答
213 浏览

javascript - ngAnimateSwap - 使用布尔表达式不会按预期设置动画

我修改了文档中的原始 ngAnimateSwap 示例,在此处输入链接描述,以使用布尔表达式而不是整数来触发幻灯片动画。

我希望横幅在“真”和“假”之间旋转,但是,只有“真”出现,而“假”不出现。来自角度文档:“ngAnimateSwap 是一个面向动画的指令,允许在相关表达式更改时删除并输入容器。”所以我预计在 true 和 false 之间的变化会导致容器动画。

在 html 中:

在控制器中:

这是显示示例的 plunkr: http ://plnkr.co/edit/iKE5BekgpxOqX1YE952Z?p=preview

作为另一个测试,如果您更新到我的 plunkr 以更改abool为在 1 和 -1 之间切换,那么动画看起来像预期的那样 - 在 1 和 -1 之间滑动。

0 投票
1 回答
167 浏览

angularjs - 错误:从角度 1.4 迁移到 1.5 后的 $rootScope:infdig

从角度 1.4 迁移到 1.5 后,出现“错误:$rootScope:infdig”。

有一些ng-initin 模板的用法,但删除它们并没有帮助。

accordion-group在第二次和下一次访问相同的路由模板后使用from ui-bootstrap(v.0.13.1)时会出现问题。

也许有人在使用这个版本时遇到同样的问题ui-bootstrap(暂时不能更新到更高版本)或者知道一些与 angular 1.5 中的此类问题相关的已知问题

只是要注意在角度 v.1.4.10 中一切正常

Update1:​​我找到了一种可能的解决方案来修复 infdig 错误,这对我的一种情况有所帮助,但并非对所有人都有帮助。

accordion-group使用自定义指令和templateUrl. 替换templateUrltemplate错误后消失。

希望这会对某人有所帮助

0 投票
1 回答
3935 浏览

angularjs - 如何在 Angular 1.5 组件中对具有不同名称的绑定进行单元测试?

我有以下组件:

为了通过以下内容:

我必须使用以下代码:

但是,我想测试绑定到“文本”的值是否来自“查询”。这不起作用