加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

react + webpack安装配置

发布时间:2020-12-15 07:35:53 所属栏目:百科 来源:网络整理
导读:使用CDN库方式 script src="http://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"/scriptgt; script src="http://static.runoob.com/assets/react/react-0.14.7/build/react-dom.min.js"/scriptgt; script src="http://static.runoob.co

使用CDN库方式

  • <script src="http://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"></script&gt;
  • <script src="http://static.runoob.com/assets/react/react-0.14.7/build/react-dom.min.js"></script&gt;
  • <script src="http://static.runoob.com/assets/react/browser.min.js"></script&gt;
  1. react.min.js React核心库
  2. react-dom.min.js 提供DOM相关的功能
  3. browser.min.js 用于将JSX语法转为javascript语法
<!DOCTYPE html>
	<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Document</title>
		<script src="http://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"></script>
	    <script src="http://static.runoob.com/assets/react/react-0.14.7/build/react-dom.min.js"></script>
	    <script src="http://static.runoob.com/assets/react/browser.min.js"></script>
	</head>
	<body>
		<div id="app"></div>
		<script type="text/babel">
			ReactDOM.render(
				<h1>hello world</h1>,document.getElementById('app')
			);
		</script>
	</body>
	</html>

使用脚手架方式

我们使用webpack作为脚手架

首先新建目录test,进入test目录

安装webpack

  • npm init
  • npm install
  • npm install webpack
  • npm install webpack-dev-server --save-dev

安装react

  • npm install react --save
  • npm install react-dom --save

安装一些babel插件

  • npm install babel
  • npm install babel-core
  • npm install babel-loader
  • npm install babel-preset-react
  • npm install babel-preset-es2015

创建一些必须的文件

  • touch index.html
  • touch App.jsx
  • touch main.js
  • touch webpack.config.js

配置webpack设置编译器、服务器、载入器

var path = require('path')
var webpack = require('webpack')

module.exports = {
   entry: './main.js',output: {
      path:'./',filename: 'index.js',},devServer: {
      inline: true,port: 7777
   },module: {
      loaders: [ {
         test: /.jsx?$/,exclude: /node_modules/,loader: 'babel-loader',query: {
            presets: ['es2015','react']
         }
      }]
   },plugins: [
      new webpack.DefinePlugin({
        'process.env': {
          NODE_ENV: JSON.stringify('production')
        }
      }),new webpack.optimize.UglifyJsPlugin()
  ]

}

根目录新建index.html

<!DOCTYPE html>
<html>
   <head>
      <meta charset="UTF-8">
      <title>hello</title>
   </head>
   <body>
      <div id="app"></div>
      <script src="index.js"></script>
   </body>
</html>

根目录新建mian.js

import React from 'react';
import ReactDOM from 'react-dom';

import App from './App.jsx';

ReactDOM.render(<App />,document.getElementById('app'))

根目录新建App.jsx

import React from 'react';

class App extends React.Component {
   render() {
      return (
         <div>
            Hello World!!!<br />
            你好世界!!!
         </div>
      );
   }
}

export default App;

配置服务

打开package.json 找到scripts节点,插入

"scripts": {
    "start": "webpack-dev-server --hot","build": "webpack --progress --hide-modules"
 },

启动服务

npm start

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读