- Open TodoFooter and write a TodoFooterProps interface. It should include two values, a function and an object. Assign this interface to props like this:
(props: TodoFooterProps)
- Write an
_onClick
function that callsprops.clear
.Since TodoFooter is not a class the
_onClick
needs to be declared as a const, and placed before thereturn
. - Add
_onClick
to the button'sonClick
. You won't need to usethis
since this isn't a class.We can't assign our
clear
function directly toonClick
. We always need to create a function that calls our callbacks.() => props.clear()
- Test out this functionality. Check a few todos complete and click the
Clear Completed
button
- Open TodoHeader and write TodoHeaderProps which will include 3 values. Replace the first
any
with this interface. - This component also has state. Write TodoHeaderState (there's just one item), and add this where the second
any
was. - Add
_onFilter
to each of the filter buttonsNote that we can't add new parameters to onClick, but we can pull information from the event target!
- Write an
_onAdd
method that callsaddTodo
on the currentlabelInput
, then sets thelabelInput
in state to an empty string - Call
_onAdd
from the submit button - Check out this new functionality! We can now add and filter todos!