.l-main-section
p.
As mentioned earlier, you build Angular applications as a tree of nested components.
You've seen how to create a top-level component.
You add child components to a parent component by using them in
the parent component's template,
and by specifying the child component classes in the parent's list of directives.
p.
Given a bootstrapping template with a <parent>
tag in the body,
you can create a parent
component that uses a <child>
component like so:
pre.prettyprint.linenums.lang-dart
code.
part of making_components;
@Component(
selector: 'parent'
)
@View(
template: '''
<h1>{{ message }}</h1>
<child></child>
''',
directives: const[ChildComponent]
)
class ParentComponent {
String message = "I'm the parent";
}
p You then just need to write the ChildComponent
class to make it work:
pre.prettyprint.linenums.lang-dart
code.
part of making_components;
@Component(
selector: 'child'
)
@View(
template: '''
<p> {{ message }} </p>
'''
)
class ChildComponent {
String message = "I'm the child";
}
//p.
[TODO: Motivate communication between components with iterator example that passes index to the child]