git 创建webpack项目_近期总结:手动搭建react项目,将项目从自己的库引入到新的项目中使用...
背景:最近公司有这样一个需求,需要开发一个react工具类,这个工具类可以用在其他项目里使用,并且这个工具类比较大,需要多人协作开发。
这个项目主要由同事负责,于是同事就将这个工具类当成一个单独的项目,之后将其打包放在公司的代码仓库中,随后只要在其他地方引入该库就可,即在package.json中用到下面这段代码。
git+https://github.com/dadafrank/UIWeb.git
并且还手动搭建了工具类的开发环境,为了总结最近学到的东西,自己也来手动试试。
开始搭建工具类的开发环境
首先,创建在指定地方创建文件夹,并打开。
mkdir test-react
初始化npm和git
npm init -ygit init
创建一下项目的整体结构和基本文件,在项目下创建public、webpack、src文件夹。
因为是react项目,所以先安装一下react和react-dom
npm i react react-dom
在src下创建components文件夹,并在components下创建一个demo.js的文件夹
import React from 'react'const Demo = () => {return (<div>这就是大家都需要的组件</div>)
}export default Demo;
在src下创建一个index.js
import React from 'react'
import reactDom from 'react-dom'import Demo from './components/demo.js'const App = () => {return (<><Demo /></>)
}reactDom.render(<App/>, document.getElementById('root'));
在public下创建一个index.html文件
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>react项目</title>
</head>
<body><div id="root"></div>
</body>
</html>
安装webpack的基础依赖包
npm i webpack webpack-cli html-webpack-plugin webpack-dev-server babel-loader @babel/core @babel/preset-react @babel/preset-env -D
然后创建webpack的配置文件,分别创建webpack.config.dev.js、webpack.config.prod.js两个文件。
webpack.config.dev.js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');const htmlWebpackPlugin = new HtmlWebpackPlugin({template: path.resolve(__dirname, '../public/index.html'),
});module.exports = {mode: 'development', entry: path.resolve(__dirname, '../src/index.js'),output: { path: path.resolve(__dirname, '../dist'), filename: 'js/[name].[hash].bundle.js', },module: {rules: [ {test: /.(mjs|js|jsx)$/,exclude: /node_modules/,use: ['babel-loader'],}],},plugins: [htmlWebpackPlugin,],resolve: {extensions: ['.mjs', '.js', '.jsx'],},devServer: { // 这部分根据自己的需求设置host: '127.0.0.1',port: 8009,hot: true,// proxy: {// 'api': {// target: 'http://xx.xx.xx.xx:xxxx',// pathRewrite: {// '^/api': '/api'// },// changeOrigin: true,// }// }}
};
webpack.config.prod.js
const path = require('path');module.exports = {mode: 'production', entry: path.resolve(__dirname, '../src/components/demo.js'),output: { path: path.resolve(__dirname, '../dist'), filename: 'index.js', libraryTarget: 'umd',libraryExport: 'default',library: "testReact", },module: {rules: [ {test: /.(mjs|js|jsx)$/,exclude: /node_modules/,use: ['babel-loader'],}],},resolve: {extensions: ['.mjs', '.js', '.jsx'],},
};
项目下创建babel的配置文件.babelrc
{"presets": ["@babel/preset-react","@babel/preset-env"]
}
在package.json的scripts下添加两条命令
"start": "webpack-dev-server --config ./webpack/webpack.config.dev.js --progress",
"build": "webpack --config ./webpack/webpack.config.prod.js --progress"
ok,这样基本的环境配置应该就没问题,测试一下。
测试
执行npm run start
解决问题
上网查了一下发现是版本不匹配的问题,所以我换了一个webpack-cli
npm i webpack-cli@3.3.12 -D
再次测试
再次执行npm run start
没有报错,说明可以了,输入http://localhost:8009/看看
这就说明可以了,执行一下npm run build也能看到项目下多了一个dist文件夹,ok,这样项目就能在本地运行了。然后准备在其他项目引入此项目,首先我们需要修改一下package.json中修改一下main。
"main": "dist/index.js",
这样其他项目就知道用dist的index.js了。
将项目发布到仓库上
我这里用的是码云,在码云上创建仓库就直接省略啦。直接开始上传到仓库上的操作。
git add ***
git commit -m "第一次发布"
git remote add origin https://gitee.com/xxFrank/test-react.git
git push --set-upstream origin master
这里的add因为我没有写.gitignore文件的原因,所以自己慢慢add,大家注意不要把/node_modules给传上去了。
在新项目中将工具项目引入
为了方便,我直接用create-react-app来新建一个项目。
npx create-react-app new-react
随后,在新项目中的package.json的devDependencies中添加下面的代码。
"devDependencies": {"testReact": "git+https://gitee.com/xxFrank/test-react.git"},
然后再执行一次npm i,完成后在App.js中引入我们的工具。
import React from 'react'
import TestReact from 'testReact'function App() {return (<div className="App"><div>这里新项目,下面是引入的组件</div><TestReact /></div>);
}export default App;
执行npm run start,然后打开http://localhost:3000看看能不能用。
okok,这样说明我们就成功了。当然刚才我们手动搭建的项目还需要自己去添加css、图片等等的配置,大家有时间可以自己去试试,我就不重复写了。
呜呜呜,终于写好了,溜了溜了。
git 创建webpack项目_近期总结:手动搭建react项目,将项目从自己的库引入到新的项目中使用...相关推荐
- git 创建webpack项目_从 0 开始构建 webpack 项目【Webpack Book 翻译】
在开始之前,请确保你使用的是 Node 的最新版本.至少是最新的 LTS(长期支持)版本,本书的配置基于 LTS 版本所写,你的终端需要有 node 和 npm 命令,Yarn 也是一个不错的选择,也 ...
- git 创建webpack项目_Webpack入门:从安装到配置
文档 webpack 用于编译 JavaScript 模块. 一旦完成安装,你就可以通过 webpack 的 CLI 或 API 与其配合交互. 这里以入门者的角度(中文)介绍 webpack 的常用 ...
- 手动搭建 React 项目
目录 一. 初始化项目 二. Webpack 配置 2.1 基础配置设置 2.2 安装基础插件包 2.3 测试 2.4 总结 三. 添加对 scss 样式文件的支持 3.1 TODO 3.2 webp ...
- git 创建webpack项目_使用webpack手动创建一个完整项目的全过程
1.创建文件夹"webpack-study" 2.使用webstrom打开文件夹所在位置.在根目录上创建一个文件,文件命名为"src",在src文件下新建css ...
- git 创建webpack项目_从0到1开发一个小程序cli脚手架(一)创建页面/组件模版篇...
github地址: https://github.com/jinxuanzheng01/xdk-cli cli工具是什么? 在正文之前先大致描述下什么是cli工具, cli工具英文名command-l ...
- git 创建webpack项目_一次create-react-app创建项目升级webpack的流水账
不再赘述为什么要升级webpack4,有兴趣的小伙伴可以看一下 知乎:如何评价webpack4 下面撸起袖子开干: 克隆项目,新建分支 git checkout -b feature_webpack_ ...
- git 创建webpack项目_webpack项目的搭建及环境构建
现如今,webpack已经快速进入前端开发人员的眼线(从1.0到4.X的版本的更新迭代),给前端开发也带来了很大的突破,webpack可以分析项目结构,模块化打包机,处理模块化依赖,转换成浏览器可运行 ...
- 2020.2idea怎么创建html模块_利用idea快速搭建一个项目
一.前提准备:电脑安装好jdk1.8,安装好IDEA 二.步骤 1.点击创建一个新项目 2.选择 Spring initializr选项,这是一个非常方便的生成Springboot的工具,确认信息无误 ...
- git 创建邮箱 用户名_厉害了!IDEA中如何使用Git进行项目管理,完整教程来了?...
第一部分:安装 1. 下载地址: https://git-scm.com/download/win如果速度慢, 使用 迅雷下载;2. 点击安装, 然后下一步, 直到下面这个页面: 建议: 按照上面所示 ...
最新文章
- Ubuntu 16.04下部署Graylog日志服务器
- cefSharp通过js操控页面,含跨域操控
- mysql win10 5.5_win10上MySql5.5版本升级到5.7
- POJ 2483 Cows(树状数组)
- 微型计算机广告牌实验报告,微型计算机实验报告1资料.doc
- 求一份100行左右的C语言程序,求4个C语言程序 每个100行左右 大一水平的
- Mac下安装MySQL
- 新的实现上下文对话的方法
- 项目杂-备注-说明-其他
- php zip 不能创建文件,PHP无法访问新创建的zip文件
- BZOJ 3384: [Usaco2004 Nov]Apple Catching 接苹果( dp )
- 干货 | 100亿+数据量,每天50W+查询,携程酒店数据智能平台实践
- 西门子PLC 1200和V20变频器USS通讯
- 计算机老提示安全证书到期,安全证书过期,教您怎么解决网站安全证书过期
- 机器学习笔记(吴恩达老师)
- 质量管理、质量保证、质量控制的区别
- Secure Boot什么意思?BIOS中Secure Boot灰色无法更改解决方法详解
- AnyLogic第二讲行人仿真空间逻辑讲解
- Win7有多条隧道适配器的原因及关闭方法
- 简单介绍asp模式与saas模式