Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialJacob Herper
94,150 PointsFailed to compile after refactoring
Hi there,
I am wondering if I might have forgotten something in the React by Example course when refactoring the project. Now I get the following error and I can't figure our where the problem might lie:
> Failed to compile
> ./src/MainContent/index.js
>
> Line 12: 'totalInvited' is not defined no-undef
> Line 13: 'numberAttending' is not defined no-undef
> Line 14: 'numberUnconfirmed' is not defined no-undef
import React from 'react';
import PropTypes from 'prop-types';
import ConfirmedFilter from './ConfirmedFilter';
import GuestList from './GuestList';
import Counter from './Counter';
const MainContent = props =>
<div className="main">
<ConfirmedFilter />
<Counter
totalInvited={totalInvited}
numberAttending={numberAttending}
numberUnconfirmed={numberUnconfirmed}
/>
<GuestList
guests={this.state.guests}
toggleConfirmationAt={this.toggleConfirmationAt}
toggleEditingAt={this.toggleEditingAt}
setNameAt={this.setNameAt}
isFiltered={this.state.isFiltered}
removeGuestAt={this.removeGuestAt}
pendingGuest={this.state.pendingGuest}
/>
</div>;
MainContent.propTypes = {
toggleFilter: PropTypes.func.isRequired,
isFiltered: PropTypes.bool.isRequired,
totalInvited: PropTypes.number.isRequired,
numberAttending: PropTypes.number.isRequired,
numberUnconfirmed: PropTypes.number.isRequired,
guests: PropTypes.array.isRequired,
toggleConfirmationAt: PropTypes.func.isRequired,
toggleEditingAt: PropTypes.func.isRequired,
setNameAt: PropTypes.func.isRequired,
removeGuestAt: PropTypes.func.isRequired,
pendingGuest: PropTypes.string.isRequired
}
export default MainContent;
2 Answers
Torben Korb
Front End Web Development Techdegree Graduate 91,433 PointsHi Jacob,
try to pass the props to your components like props.totalInvited, props.numberAttending and so on. Those are declared in the context of main app and passed to your component here as props. So this is the way to access them.
Bartlomiej Zabielski
Courses Plus Student 10,363 Pointsrefactoring is frustrating i wish Guil just coded the solution live.