亚洲欧美日韩综合系列在线_91精品人妻一区二区_欧美大肥婆一级特大AA片_九色91视频免费观看_亚洲综合国产精品_av中文字幕在线不卡_久久精品色综合网_看黄色视频的软件_无卡无码高清中文字幕码2024_亚洲欧美日韩天堂网

從零開始搭建一個基于React框架的博客發(fā)布系統(tǒng) (SIX) Webpack編譯配置

來源:Run_youngman 發(fā)布時間:2018-06-30 17:26:43 閱讀量:1543

打包是門學問,用戶瀏覽你的網(wǎng)站,你應(yīng)該總是想用戶查看不同的頁面的同時去加載相應(yīng)的資源,而不是用戶訪問你的網(wǎng)站你就一股腦的把服務(wù)端資源全部傳送給用戶,比如我要看第一篇博客,你憑什么把所有的博客全部發(fā)給用戶,浪費流量倒是小事,但是網(wǎng)站資源過多,這就是性能的瓶頸。

在config下新建blog.js文件,分別把每篇博客作為打包的入口??梢源蛴∫幌耣log返回的內(nèi)容。

這里寫圖片描述

通過這個不難看出,他找到了博客所在的具體文件夾,可以看出第一次打包的產(chǎn)出結(jié)果:

這里寫圖片描述

css,js單獨放在了一個文件夾中,以及md文件作為靜態(tài)文件存在。

現(xiàn)在我把entry變成

entry: {
    app: [require.resolve('./polyfills'), paths.appIndexJs],
    ...blogs
  },12345

app文件夾下統(tǒng)一存放index.js引申的文件,blog另外作為入口打包。

這里寫圖片描述

樣式還沒有處理,但是你可以看到,每一篇博客都被分別打包了。

剩下的時候就是我們開發(fā)的時候做的操作,包括raw-loader打包markdown文件,

less-loader,postcss-loader等解析css文件。這些和開發(fā)環(huán)境是一致的,因為畢竟build也需要執(zhí)行展示的。

并且,在代碼中,我使用了新引入的UglfyJsPlugin,并沒有使用webpack**自帶**的UglfyJsPlugin,避免一些問題的出現(xiàn)。

new UglifyJsPlugin({ sourceMap: false }),

看看現(xiàn)在的build效果:

這里寫圖片描述

這樣依賴打包的內(nèi)容就更清爽了,直觀看到的是.map文件不見了,看剛才的UglfyJsPlugin的配置,

我們把sourceMap設(shè)置為了false。 
還差一步,我暫時還不知道原因,記得把webpack的一段話修改一下打包方式:

{            test: /\.(js|jsx|mjs)$/,            include: paths.appSrc,            loader: require.resolve('babel-loader'),            options: {              //compact:true  放棄這個默認的操作。              cacheDirectory: true,
            },
          },123456789

一開始默認的是compact:true 
這樣一來,就剩下最后一步了,這個就不涉及前端的知識了,記得一開始的時候讓大家新建過一個github.io的倉庫,這個就是github提供給你存放部署代碼的,你提交上去的代碼他會自動為你部署,然后通過https://xxx.github.io就可以訪問自己添加的內(nèi)容了。

到這里,博客系統(tǒng)就告一段落了,以后可能會繼續(xù)升級功能,謝謝收看,有問題留言哦。


原文地址https://blog.csdn.net/Run_youngman/article/details/80853745

標簽: HTML JS
分享:
評論:
你還沒有登錄,請先