2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								id: 5a24c314108439a4d403616e
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								title: Accedere alle proprietà utilizzando this.props
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								challengeType: 6
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								forumTopicId: 301375
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								dashedName: access-props-using-this-props
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# --description--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Le ultime sfide hanno mostrato i modi fondamentali per passare le proprietà ai componenti figli. Ma cosa succede se il componente figlio a cui stai passando una prop è un componente di classe ES6, piuttosto che un componente funzionale senza stato? Il componente di classe ES6 utilizza una convenzione leggermente diversa per accedere alle proprietà.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Ogni volta che fai riferimento a un componente di classe all'interno di sé stesso, usi la parola chiave `this` . Per accedere alle proprietà all'interno di un componente di classe, premetti `this`  al codice che usi per accedervi. Ad esempio, se un componente di classe ES6 ha una prop chiamata `data` , scriverai `{this.props.data}`  in JSX.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# --instructions--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Mostra un'istanza del componente `ReturnTempPassword`  nel componente padre `ResetPassword` . Qui, dai a `ReturnTempPassword`  una prop di `tempPassword`  e assegnale un valore stringa di almeno 8 caratteri. All'interno del figlio, `ReturnTempPassword` , accedi alla prop `tempPassword`  all'interno dei tag `strong`  per assicurarti che l'utente veda la password temporanea.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# --hints--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Il componente `ResetPassword`  dovrebbe restituire un singolo elemento `div` .
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								assert(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  (function () {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const mockedComponent = Enzyme.mount(React.createElement(ResetPassword));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return mockedComponent.children().type() === 'div';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  })()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Il quarto figlio di `ResetPassword`  dovrebbe essere il componente `ReturnTempPassword` .
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								assert(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  (function () {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const mockedComponent = Enzyme.mount(React.createElement(ResetPassword));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      mockedComponent.children().childAt(3).name() === 'ReturnTempPassword'
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  })()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Il componente `ReturnTempPassword`  dovrebbe avere una prop chiamata `tempPassword` .
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								assert(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  (function () {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const mockedComponent = Enzyme.mount(React.createElement(ResetPassword));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return mockedComponent.find('ReturnTempPassword').props().tempPassword;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  })()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								L'elemento `tempPassword`  di `ReturnTempPassword`  dovrebbe essere uguale a una stringa di almeno 8 caratteri.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								assert(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  (function () {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const mockedComponent = Enzyme.mount(React.createElement(ResetPassword));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const temp = mockedComponent.find('ReturnTempPassword').props()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      .tempPassword;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return typeof temp === 'string' & &  temp.length >= 8;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  })()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-06-26 21:42:30 +05:30 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Il componente `ReturnTempPassword`  dovrebbe visualizzare la password che crei come prop `tempPassword`  all'interno dei tag `strong` .
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 00:49:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								assert(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  (function () {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    const mockedComponent = Enzyme.mount(React.createElement(ResetPassword));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      mockedComponent.find('strong').text() ===
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      mockedComponent.find('ReturnTempPassword').props().tempPassword
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  })()
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# --seed--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## --after-user-code--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```jsx
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								ReactDOM.render(< ResetPassword  / > , document.getElementById('root'))
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## --seed-contents--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```jsx
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class ReturnTempPassword extends React.Component {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  constructor(props) {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    super(props);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  render() {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            { /* Change code below this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < p > Your temporary password is: < strong > < / strong > < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            { /* Change code above this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								};
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class ResetPassword extends React.Component {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  constructor(props) {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    super(props);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  render() {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h2 > Reset Password< / h2 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h3 > We've generated a new temporary password for you.< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h3 > Please reset this password from your account settings ASAP.< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          { /* Change code below this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          { /* Change code above this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								};
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# --solutions--
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```jsx
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class ReturnTempPassword extends React.Component {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  constructor(props) {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    super(props);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  render() {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < p > Your temporary password is: < strong > {this.props.tempPassword}< / strong > < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								};
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class ResetPassword extends React.Component {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  constructor(props) {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    super(props);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  render() {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h2 > Reset Password< / h2 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h3 > We've generated a new temporary password for you.< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < h3 > Please reset this password from your account settings ASAP.< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          { /* Change code below this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          < ReturnTempPassword  tempPassword = "serrPbqrPnzc"  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								          { /* Change code above this line */ }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    );
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								};
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```