"Uncaught TypeError: React.createClass is not a function"在渲染.js文件(电子应用程序)



我是React.js的新手P>

这是我的render.js文件

var React = require('react');
var ReactDOM = require('react-dom');
var $ = jQuery = require('jquery');
var bootstrap = require('bootstrap');
//var createReactClass = require('create-react-class');
var MainInterface = React.createClass({
  render: function() {
    return(
      <h1>SUCCESSSSSSSSSSS</h1>
  );
}//render
});//MainInterface
ReactDOM.render(
  <MainInterface />,
  document.getElementById('projects')
);//render

这是HTML文件(希望替换WPM ...加载)(我确实有我的实际文件中缺少的最后一个HTML标签)

> <!DOCTYPE html> <html lang ="en">   <head>
>     <meta charset="utf-8">
>     <meta name ="viewport" content="width=device-width, initial-scale=1.0">
>     <meta http-equiv="X-UA-Compatible" content="ie=edge">
>     <link rel="stylesheet" href="css/app.css">
>     <title>Project Manager</title>   </head>   <body>   <div claa="main">
>     <div class="page" id="projectratings">
>       <div id="projects">
>         <h2>WPM ... loading</h2>
>       </div>
>     </div>   </div> <script src="js/render.js"></script>   </body>

这是我的软件包

{
  "name": "ETest",
  "version": "1.0.0",
  "main": "app/main.js",
  "devDependencies": {
    "create-react-class": "^15.6.2",
    "electron": "^1.7.8",
    "electron-packager": "^9.1.0",
    "gulp": "^3.9.1",
    "gulp-browserify": "^0.5.1",
    "gulp-concat-css": "^2.3.0",
    "gulp-react": "^3.1.0",
    "gulp-run": "^1.7.1",
    "react": "^16.0.0",
    "react-addons-test-utils": "^15.6.2",
    "react-dom": "^16.0.0",
    "reactify": "^1.1.1"
  },
  "dependencies": {
    "bootstrap": "^3.3.7",
    "electron-reload": "^1.2.2",
    "jquery": "^3.2.1",
    "lodash": "^4.17.4"
  }
}

我尝试安装Creat-React-R-class并使用(如在渲染文件中注释的行中看到的)

我已经卸载并重新安装了反应和反应

不确定我还缺少什么

只是继续

C:UsersuserDesktopElectronTestingprocessjsfake_6052bf8b.js:8 
Uncaught TypeError: React.createClass is not a function

我的render.js文件可在eletrontesting process js render.js上找到不知道为什么它指向我一直认为这是某种临时文件的face_6052bf8b.js(如果我错了,请纠正我)

感谢您的任何帮助。

**编辑yep只是一个简单的错误,忘了替换react。用createActClass进行createclass,感谢您的代码示例,使我终于看到了!

React从版本16中删除了createClass。您可以使用create-react-class轻松迁移,如React文档中所示。

// Before (15.4 and below)
var React = require('react');
var Component = React.createClass({
  mixins: [MixinA],
  render() {
    return <Child />;
  }
});
// After (15.5)
var React = require('react');
var createReactClass = require('create-react-class');
var Component = createReactClass({
  mixins: [MixinA],
  render() {
    return <Child />;
  }
});

阅读有关此https://reactjs.org/blog/2017/04/07/react-v15.5.5.5.0.html#migrating-from-rom-reactcreateclass

export default class App extends React.Component{
    render() {
        return(
           <h1>its works</h1>
        );
    }
};

这对我有用,结帐此reactjs createClass不是一个函数,因此它通过导出react.component而不是使用react.createclass.createclass

在最新版本的react中,您会注意到react.coreateclass已从库中删除。最大的更改之一是您可以使用JavaScript类创建React组件。

最新更新