angular - 如何以角度设置组件的属性
问题描述
我正在使用 Angular 中的一些自定义组件,想知道是否有办法实现以下目标。我有一个表单,我想以反应形式动态显示或隐藏不同的表单元素。在正常输入上这不是问题,但我有几个自定义控件的实例,我在这样的模板中设置了这些实例。
<app-dropdown placeholder="Test"
[disabled]="showEditNewButton"
guid='820E04E0-8084-4D9C-A268-D8C0D21E74F6'
formControlName="test">
</app-dropdown>
所以现在的问题是我如何通过父组件中的代码设置占位符字符串或 guid?还有什么是根据反应表单上另一个字段中的值从 Dom 隐藏或删除某些自定义控件的最佳方法。请记住,同一组件可能有多个实例,只是具有不同的 formControlName 和 guid。
我在我的组件中已经指定了@Input(),所以我可以将数据从模板发送到组件。
@Input() guid: string;
@Input() options: IServerDropdownOption[];
@Input() placeholder = '--Select--';
@Input() isRequired = false;
private _disabled = false;
@Input() set disabled(isDisabled: boolean) {
this._disabled = isDisabled;
};
get disabled() {
return this._disabled;
}
options$: Observable<Array<ServerDropdownOption>>;
value;
selectField;
form: FormGroup;
onChange;
onTouched;
validateFn: Function;
问题是如何像我想通过代码设置占位符一样从父组件向子组件发送数据。
解决方案
您可以使用 ngModel 并使用 JSON 对象输入组合
推荐阅读
- webpack - webpack 找不到模块 vscode、“vscode-debugadapter”和“vscode-debugprotocol”
- sql - SQL - 使用 CTE 或聚合计算指数移动平均线?
- python - 不懂 scipy.optimize.brute 语法
- python - 全局列表未全局化
- shell - 设置视图时如何添加要执行的命令?
- typescript - 如何处理带有可选泛型参数的函数重载?
- java - 使用 JAVA 将字符串拆分为多个部分并存储到 CSV
- angular - 如何每1小时在页面中刷新数据,而当标签接收到焦点时
- php - 在 PHP Autoload 中添加快捷方式会导致 Laravel 发生冲突
- php - Symfony3中生成实体时出错如何解决