装饰器@Provide/@Consume

@Provide
装饰的状态变量自动对其所有后代组件可用,即该变量被“provide”给他的后代组件。由此可见,@Provide的方便之处在于,开发者不需要多次在组件之间传递变量。

后代通过使用@Consume去获取@Provide提供的变量,建立在@Provide和@Consume之间的双向数据同步,与@State/@Link不同的是,前者可以在多层级的父子组件之间传递。

父组件创建修饰@Provide

@Provide('pageInfos') pageInfos: NavPathStack = new NavPathStack();

调用子组件时,子组件如何使用@Consume,则自动获取获取

@Consume('pageInfos') pageInfos: NavPathStack;