使用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(<MyComponent/>,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(<MyComponent/>,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”,所以各种版本更新也会导致学习中遇到问题额,前人已经给出相似问题的解决办法了,总之要自己学会查找对自己有用的答案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值