我有一个节点项目,非常简单,我有一个页面,一个组件和一个index.js
。我有两个道具:text
和num
。我正在尝试使用PropTypes来提供警告,如果它们不是正确的类型,或者当我执行.isRequired
时它们不存在。但是,他们没有抛出任何错误。这是我的PropTypes代码的问题吗?我使用的是React 16.2.0和prop-types 15.6.0。我使用create-react-app
来创建我的应用。
这是代码。
App.js:
import React from 'react';
import PropTypes from 'prop-types';
class App extends React.Component{
render() {
let text = this.props.text
let num = this.props.num
return <h1>{text}{num}</h1>
}
}
App.propTypes = {
text: PropTypes.string.isRequired,
num: PropTypes.number
};
export default App
index.js:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
ReactDOM.render(
<App num="hey"/>,
document.getElementById('root')
);
的index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>React App</title>
</head>
<body>
<div id="root"></div>
</body>
</html>
正如您所看到的,num
不仅类型错误(字符串而不是数字),而且text
不存在,并且标记为.isRequired
。< / p>
我的服务器继续运行并显示“嘿”并且不会发出任何警告。我在这里错过了什么?????
答案 0 :(得分:6)
错误不会在您的终端中打印,而是在浏览器控制台中打印。并检查控制水平,你可能在&#34;警告&#34;或其他什么。
答案 1 :(得分:0)
当我运行直接在html页面中编写的组件时,浏览器控制台会显示警告。但是,当我使用转译捆绑软件进行相同的测试时,我没有得到相同的结果。我正在使用webpack。我想念什么吗?
export class Resumo extends React.Component {
static propTypes = {
podeRedirecionar: PropTypes.bool.isRequired
}
}