javascript - create-react-app 太慢并创建困惑的应用程序

标签 javascript html css reactjs

我正在学习 react 并且没有太多经验。每当我想创建一个新的 React 元素时,create-react-app 命令都会花费很多时间来创建一个。我关注了CodeSandbox它可以非常快速地创建 React 应用程序,并且它们简单干净,不像 create-react-app 制作的那些过于复杂和困惑。是否有样板可以帮助我快速创建简单的 React 应用程序?

最佳答案

这是最简单的开始方式

npx create-react-app my-app
cd my-app
npm start

下面是一个替代方案,但涉及的内容更多。

mkdir my-app // create directory
cd my-app
npm init -y //create package.json
npm install react react-dom //install react and react-dom
touch index.js index.css

您可以将您的代码添加到 index.js。它看起来像这样

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';

class App extends React.Component{
    render(){
        return(
            <div>Hello World</div>
        )
    }
}

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

之后你需要得到你的 babel

npm install --save-dev @babel/core @babel/preset-env @babel/preset-react webpack webpack-cli webpack-dev-server babel-loader css-loader style-loader html-webpack-plugin

touch webpack.config.js

配置你的webpack

var path = require('path');
var HtmlWebpackPlugin =  require('html-webpack-plugin');

module.exports = {
    entry : './my-app/index.js',
    output : {
        path : path.resolve(__dirname , 'dist'),
        filename: 'index_bundle.js'
    },
    module : {
        rules : [
            {test : /\.(js)$/, use:'babel-loader'},
            {test : /\.css$/, use:['style-loader', 'css-loader']}
        ]
    },
    mode:'development',
    plugins : [
        new HtmlWebpackPlugin ({
            template : 'my-app/index.html'
        })
    ]

}

添加 babel 预设和 npm 命令来构建(build)和运行(dev)你的代码到 package.json

"main": "index.js",
"babel": {
  "presets": ["@babel/preset-env", "@babel/preset-react"]
},
"scripts": {
  "build": "webpack",
  "dev": "webpack-dev-server --open"
}

关于javascript - create-react-app 太慢并创建困惑的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58363577/

相关文章:

javascript - 双列布局,两列高度相同且都填满屏幕的全高

html - Bootstrap 3 上绝对 div 内的 col-sm-* 宽度问题

javascript - 如何找到内部元素的宽度

html - 如何防止其他 div 停止鼠标悬停

Javascript 异常(仅发生在 PC 上的 FireFox 4.01 中)

javascript - 下拉菜单无法正常工作。 (html)

javascript - Sequelize include 不适用于 hasOne 关系

javascript - 修改后的对象属性数组然后传递给前端

html - 如何修复 CSS 轮播?

html - div 中的图像不会更改大小以适应不同尺寸的屏幕