2016-12-10 2 views
0

Я новичок в реакции. Я пытаюсь проверить опоры. В соответствии с документацией, если remove isRequired value, он показывает предупреждение в режиме разработки.propsvalidation isrequired не показывает предупреждение в реакции

import React from 'react'; 

export default class PropsValidation extends React.Component{ 
    render(){ 
     return(
      <div> 
       <h1>Props Validation</h1> 
       <p>{this.props.propArray}</p> 
       <p>{this.props.propBoolean}</p> 
       <p>{this.props.propFunction}</p> 
      </div> 
     ) 
    } 
} 

PropsValidation.defaultProps = { 
    propArray:[1,2,3], 
    propBoolean:false, 
    propFunction:function(e){return e} 
} 

PropsValidation.propsTypes = { 
    propArray: React.PropTypes.array.isRequired, 
    propBool: React.PropTypes.bool.isRequired, 
    propFunction: React.PropTypes.function 
} 

ответ

0

я "м не в полной мере понять ваш вопрос, но одно предупреждение вы собираетесь получить это bevause из propFunction: React.PropTypes.function должно быть propFunction: React.PropTypes.func

реагируют ожидать func не function для proptype, которая является функцией

https://facebook.github.io/react/docs/typechecking-with-proptypes.html

В этой статье перечислены все доступные виды, которые доступны

+0

Я перехожу по этой ссылке и пытаюсь узнать, как реагировать. В соответствии с этим руководством, если я не понимаю значение переменной isRequired, он показывает warnign. Который в настоящее время не происходит. https://www.tutorialspoint.com/reactjs/reactjs_props_validation.htm –

+0

Если вы присваиваете им реквизиты по умолчанию, как вы находитесь в фрагменте кода, который вы отправили, они всегда будут иметь начальное значение, и вы не увидите предупреждения. Удалите реквизиты по умолчанию и посмотрите, что получится – finalfreq

+0

Спасибо за помощь. Но все равно не получаю предупреждения. Есть ли необходимость в настройке в package.json или webpack.config.js –

0

Вы получите предупреждение, если у вас есть указатель, который определен как необходимый, не установлен и не имеет значения по умолчанию. Если есть значение по умолчанию, поддержка не пуста, поэтому проверка на isRequired проходит.

+0

После удаления значения define из defaultProps все еще не получают предупреждения в консоли. Я следую этой [link] (https://www.tutorialspoint.com/reactjs/reactjs_props_validation.htm) из учебной точки. –

Смежные вопросы