使用npm安装react使用中报错问题

刚开始学习react,首先按照教程写了一遍代码。
React 入门实例教程 - 阮一峰的网络日志
过程中也并没有遇到什么问题,接着开始写小的项目,使用了node.js中npm 安装各种需要的包,按需引入;使用了gulp进行模块打包。

react相关:
npm install react –save
gulp相关:
gulp、gulp-connect、gulp-browserify、gulp-concat

首先我在main.js中

var React = require('react');
var MyComponent = require('./components/Hello.js');

React.render(,document.getElementById('app'));
//Hello.js文件
var React = require('react');
module.exports = React.createClass({
    render:function(){
    return(
      <div><h1>React 问答h1>div>
    )
    }
})

结果运行的时候一直报错:
Uncaught TypeError: React.createClass is not a function

不知道出现这种问题的原因到底是什么情况,后来按照Stack Overflow中的解答,可以正常运行了。
ReactJs CreateClass is not a function

它这里又另外引入了两个包:
npm install react react-dom –save
npm install create-react-class –save
修改后代码如下:

//main.js文件
var React = require('react');
var ReactDOM = require('react-dom');
var MyComponent = require('./components/Hello.js');
ReactDOM.render(,document.getElementById('app'));
//Hello.js文件
var React = require('react');
var createReactClass = require('create-react-class');
module.exports = createReactClass({
    render:function(){
    return(
      <div><h1>React 问答h1>div>
    )
    }
})

从回答中的另一条发现原来是版本问题

React.createClass is deprecated from version 16.0 onwards and has been moved to a separate package ‘create-react-class’

React.createClass从16.0就分离出出去了,成了一个独立的模块create-react-class
使用npm安装的最新版本已经是”react”: “^16.2.0”,所以各种版本更新也会导致学习中遇到问题额,前人已经给出相似问题的解决办法了,总之要自己学会查找对自己有用的答案。

你可能感兴趣的:(react)