小编典典

如何像React一样在Angular 2+中向下传递道具?

reactjs

在反应中,我可以像这样随意传递道具:

function SomeComponent(props) {
  const {takeOutProp, ...restOfProps} = props;
  return <div {...restOfProps}/>;
}

如何在Angular中做同样的事情?

-

更具体地说,我想编写一个自定义的下拉组件,并将props传递给选择框。


阅读 286

收藏
2020-07-22

共1个答案

小编典典

与React组件相反,Angular组件不会在输入更改时重新编译,而不会使用@Input属性装饰器来启用更改检测。应该将所有预期传递的属性明确定义为组件输入。

对于自定义选择组件,没有比这更好的选择了。可以从当前组件元素读取静态 属性 并将其设置在嵌套的组件元素上,但这不会设置绑定。

至于包裹组件中深道具的React配方:

const Baz = props => <p>{props.baz}</p>;
const Bar = props => <Baz {...props} />;
const Foo = props => <Bar {...props} />;

这通常由Angular DI和喷射器的层次结构处理。可以在相应的注射器上定义提供程序,以使嵌套组件可以使用数据和行为。

2020-07-22