React轮播图(上)
765 字
4 分钟
React轮播图(上)
项目配置及原理概要
1.初始化项目
npm init -y- 生成
package.json文件
2.安装依赖包 开发依赖
npm install webpack webpack-dev-server babel-core babel-loader babel-preset-react babel-preset-es2015 babel-preset-stage-0 style-loader css-loader less-loader less file-loader url-loader html-webpack-plugin -Dwebpack打包webpack-dev-server用来启动一个HTTP服务器预览我们的项目babel-core、babel-loader进行转译 把es6和react代码转译成es5babel-preset-react用来转译reactbabel-preset-es2015用来转译es6babel-preset-stage-0用来转译es7style-loader、css-loader用来处理cssless-loader、less编译lessfile-loader、url-loader用来处理资源文件html-webpack-plugin用来自动产出html文件open-browser-webpack-plugin自动打开浏览器
3.安装生产依赖
npm install react react-dom -S4.配置文件的出入口路径
- 新建一个
webpack.config.js文件,在文件中配置入口文件和出口路径
let path=require('path');module.exports={ entry:'./src/index.js',//入口文件 output:{//出口配置 path:path.resolve('build'),//出口文件路径 filename:'bundle.js'//出口文件名称 }};5.启动安装的模块文件夹node_modules—>.bin—>webpack.cmd和webpack-dev-server.cmd文件
- 在
package.json文件中的scripts标签进行匹配
"scripts": { "build": "webpack", "dev":"webpack-dev-server" },5-1.启动webpack和webpack-dev
- 在
cmd中执行命令
npm run build-
- 在cmd窗口中显示
Asset Size Chunks Chunk Namesbundle.js 2.52 kB 0 [emitted] main [0] ./src/index.js 43 bytes {0} [built]表示生成bundle.js一个文件
-
- 在当前项目文件夹下会自动生成一个
build文件夹,同时在build文件夹下会自动生成bundle.js文件,我们的入口文件(src文件夹下的index.js)会自动打包到出口文件bundle.js中
- 在当前项目文件夹下会自动生成一个
6.自动产出html文件
6-1.现在我们需要在build文件夹中新建一个index.html文件,然后引入bundle.js进行预览;但是现在我们希望这个文件不要手动创建了,希望他可以自动生成,要做到这一点,我们需要引入插件html-webpack-plugin(此插件在最初已经安装过,如果没有安装需安装后才可使用)
-
- 在
webpack.config.js中引入html-webpack-plugin
- 在
let HtmlWebPackPlugin=require('html-webpack-plugin');-
- 同时给插件再添加个配置项
plugins,plugins是个数组
- 同时给插件再添加个配置项
plugins:[ new HtmlWebPackPlugin({ template:'./src/index.html' })]-
template模板 配置到时候会按照哪个模板来自动产出html文件 并且把它自动放到配置目录下—>一般会在src文件夹下新建一个模板叫index.html。
-
- 执行
npm run build
- 执行
-
4-1) 原理<此时如果再执行>此时如果再执行>
npm run build的话,就会执行上面配置的plugins插件,插件会读取src文件夹下的index.html模板文件,把他自动插入到打包后的bundle.js,并且把bundle.js保存到build目录下(每次执行npm run build命令,都会重新生成bundle.js和index.html两个文件) -
4-2) 在
cmd命令行执行npm run build,命令行显示:
Asset Size Chunks Chunk Names bundle.js 2.52 kB 0 [emitted] mainindex.html 188 bytes [emitted] [0] ./src/index.js 43 bytes {0} [built]表示生成bundle.js和index.html两个文件,与之前执行npm run build相比多了一个html文件。
- 4-3) 打开我们的项目文件夹下的
build文件会发现,已经自动生成了一个出口index.html出口文件,打开这个index.html出口文件会发现,index.html中已经自动引入了bundle.js文件
关于react轮播图的源码,无缝版已上传至github,https://github.com/gaodaxiu0406/React-Slider
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
React轮播图(下)
Reactreact轮播图项目开写
2
秒懂Vuejs、Angular、React原理和前端发展历史(转载)
前端框架秒懂Vuejs、Angular、React原理和前端发展历史(转载)
3
使用Astro搭建个人博客1
博客指南使用Astro搭建个人博客及部署,使用Firefly主题,使用Vercel部署
4
React.createClass 和 extends Component 的区别(转载)
ReactReact.createClass 和 extends Component 的区别(转载)
5
Vue 的响应式原理中 Object.defineProperty 有什么缺陷?为什么在 Vue3.0 采用了 Proxy?
VueVue 的响应式原理中 `Object.defineProperty` 有什么缺陷?为什么在 Vue3.0 采用了 `Proxy`,抛弃了 `Object.defineProperty`?
随机文章随机推荐












