To pass data down the hierarchy, you need to define attributes in child components, and then pass the attribute values from the parent component.
The parent component code is as follows:
<aura:component>
<aura:attribute name="parentAttribute" type="String"/>
<c:childComponent childAttribute="{!v.parentAttribute}"/>
</aura:component>
The child component code is as follows:
<aura:component>
<aura:attribute name="childAttribute" type="String"/>
</aura:component>
This way of passing data from the child to the parent is expensive when it comes to performance. Leverage the aura methods covered in the next section.