首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将双向绑定属性设置为主机元素Angular 4

将双向绑定属性设置为主机元素Angular 4
EN

Stack Overflow用户
提问于 2017-10-20 07:34:52
回答 1查看 402关注 0票数 0

有没有办法为Angular 4中的Host元素动态添加一个双向绑定(somemodel)属性?

代码语言:javascript
复制
<my-comp></mycomp>

我们想要替换上面的标记,如下所示

代码语言:javascript
复制
<my-comp [(somemodel)]="modelvalue" ></mycomp> 

在运行时动态执行。我们知道@HostBinding不支持这一点,因为我们看到的最常见的例子是向host添加类或属性。有没有办法像这样使用Angular 4替换宿主元素?如果有人能为我们指明正确的方向,我们对动态加载模板/组件持开放态度。

在Angular 1中,我们使用文本替换宿主元素标记,并执行$compile(作用域)。在使用动态加载的Angular 4中有类似的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-10-20 10:40:50

我认为你正在寻找的是Angular 4中的@Input,它允许你在组件上定义一个变量,并从HTML中接收它的值。这是Angular Docs on Input/Output

下面是一个简单的例子

在你的组件中,从Angular Core导入'Input‘

代码语言:javascript
复制
import { Input } from '@angular/core';

然后,定义输入变量。在这里,我代表一个布尔值的加载变量。

代码语言:javascript
复制
@Input() loading:boolean = false;

然后,在HTML中定义绑定。

代码语言:javascript
复制
<loader [loading]="loading"></loader>

请记住,括号内的“加载”将与输入变量的名称相匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46840344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档