问题标签 [angular2-directives]

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

javascript - 在 AtScript 中声明 Angular 2.0 装饰器的正确语法是什么?

如何在 Angular 2.x 中创建装饰器指令?我正在编写 Angular 的 alpha 版本,并试图重现 AngularJS (1.x) 指令 ngClass 中的功能。下面是我在 Angular 中尝试自己的 NgClass 的片段。我想做的是观察一些表达式的值,这些表达式可能包含类名哈希到布尔表达式。随着这些表达式的变化,名称将从已应用装饰器的元素的 classList 属性中添加或删除。

这种语法有什么问题?装饰器甚至不是工作的正确模板,也许我应该创建一个模板指令?即便如此,使用 Angular 声明指令的语法是什么?我会接受 ES5 中的答案,但我更喜欢 ES6 和 AtScript。

就上下文而言,我写这篇文章是为了准备一次演讲,我预览了使用 Angular 2 及更高版本编写应用程序的情况。

0 投票
17 回答
199312 浏览

angular - Exception: Can't bind to 'ngFor' since it isn't a known native property

What am I doing wrong?

The error is

0 投票
5 回答
263468 浏览

angular - 如何在Angular 2中将对象从一个组件传递到另一个组件?

我有Angular 组件,第一个组件使用第二个组件作为指令。它们应该共享相同的模型对象,该对象在第一个组件中初始化。如何将该模型传递给第二个组件?

0 投票
0 回答
130 浏览

javascript - 如何在 Angular 2.0 中使用键对对象执行 *ng-for?

我想对 Angular 2.0 中的以下对象执行 ng-for

就像我们过去在 Angular 1.x 中所做的那样:

提前致谢。

0 投票
1 回答
1379 浏览

angular - Angular 2 assigning form to variable not working #f="form" (submit)="onSubmit(f.value)"

I'm just going through the meteor angular 2 tutorial. In step 4 the angular 2 form binding with hash f equals form is used to bind the form to the variable f and secondly binding the onSubmit function. Neither is working for me. Has the Angular 2 API changed?

Not working HTML:

Original HTML code for parties-form.html from the sample:

And the JS Component parties-form.ts:

I copied the meteor angular 2 sample, see exact code there. Other samples like ng-book use it too as onSubmit function

0 投票
2 回答
5543 浏览

angular - 将模型和模板动态绑定到 Angular 2 中的 DOM 节点

精简版

这个Plunker定义了一个<view>可以渲染任意模型+模板的组件。这需要更改以替换先前呈现的内容,而不是附加新的对等点。

编辑:由于 user3636086 的响应,现在可以正常工作。

一个问题仍然存在:与 Angular 1 不同,Angular 2 迫使我创建一个嵌套组件来更新模板(因为模板实际上是组件的静态属性),所以我添加了一堆不必要的 DOM 节点。


长版

角 1

在我们的项目中,我们希望我们的大部分代码不直接依赖于 UI 框架。我们有一个将模型和视图联系在一起的视图模型类。以下是简化示例:

我们有一个view指令可以显示以下视图之一:

如果viewInstance发生更改,则会在 DOM 中的该位置呈现一个新的 View 对象(模型 + 模板)。例如,这个 Dashboard 视图可以具有它可以呈现的任意视图列表:

一个关键点是这是可组合的。<view>可以包含 a<view>可以包含 a ,<view>依此类推。

在 Angular 1 中,我们的view指令看起来像这样:

角 2

我正在尝试将其移植到 Angular 2,但在 DOM 位置动态加载新模板非常笨拙,迫使我每次都创建一个新的组件类型。

这是我想出的最好的(更新了来自 user3636086 的反馈):

使用了这样的东西:

编辑:这现在已经解决的问题。

剩下的问题是它创建了一堆不必要的嵌套 DOM 元素。我真正想要的是:

相反,我们有:

我们嵌套的视图越多,情况就越糟,这里没有一半的行是无关紧要的废话:

0 投票
1 回答
4177 浏览

angularjs-directive - Angular 2 指令现在“可扩展”了吗?

我对 Angular 1 的最大问题是扩展(在面向对象的意义上)指令是多么困难。

例如,input[number]在我的自定义小部件上重用指令几乎是不可能的,我必须重新实现所有验证和类型转换代码。

Angular 2 组件被实现为类,因此它们似乎可以轻松扩展。但是,他们也有@Component带有非常具体的选择器等的注释,这让我不清楚这些是否可以完全覆盖。

那么 Angular 2 指令实际上是可扩展的吗?

编辑:

好的,“可扩展”不一定是扩展类。它可以创建一个由多个现有指令组成的新指令。我对这种方法的问题是应用子指令的机制是什么?

(这些@Component类不是传统的 OO 类,具有可以分派给子级的方法。它只是字段和回调的容器,完全由注释后面的任何内容驱动。)

0 投票
2 回答
526 浏览

angular - Angular2.o0 装饰器的问题

我似乎无法Angular2.0接受测试。每次我使用注入器装饰器时,都会收到有关缺少文件/垫片的错误。reflect-metadata使用类装饰器时需要 shim;

我已经尝试过导入我的方式

但是没有 Angular 说不喜欢。

这是我的包的内容 - 一个修改过的 AngularExample,它需要修剪。任何人都可以请帮忙吗?

0 投票
1 回答
592 浏览

angularjs - 更改页面角度时重新加载指令

我用角度编写了一些代码,但是当我更改页面时重新加载指令时出现问题。因此,当我从菜单进入页面时,我所有页面中包含的文件都不会重新加载。这是 app.js 文件中的一些代码:

以及来自页面控制器的一些代码:

0 投票
1 回答
1086 浏览

google-maps - 当@Input 从谷歌地图标记事件更新时,ngFor 不更新

我正在尝试使用 angular2 构建一个简单的应用程序,我有以下组件:

当我的 map-menu.html 是:

在我的应用程序 html 中,我有:

并且列表没有更新,但是当我添加注释的 setInterval 时它工作正常。我在那里想念什么?

我用解决方案创建了一个plunker