webpack 讀取文件夾下的文件_webpack基本介紹及使用

1.什么是webpack

webpack是一個前端資源加載/打包工具。它根據模塊的依賴關系進行靜態分析,然后將這些模塊按照指定的規則生成對應的靜態資源。

從上圖看出,webpack可以將多種靜態資源js,css,less轉換成一個靜態文件,減少頁面的請求。

2.webpack安裝

全局安裝:

npm install webpack -g

npm install webpack-cli -g

查看版本號:

webpack -v

3.快速入門

3.1 js打包

1.創建src文件,src里創建bar.js

//bar

exports.info = function(str){

document.write(str);

}

2.src里創建logic.js

//logic

exports.add = function(a,b){

return a+b;

}

3.src里創建main.js

//main.js

var bar = require("./bar");

var logic = require("./logic");

require('./css1.css');

bar.info("hello world! "+logic.add(100,200));

4.創建配置文件webpack.config.js,與src處于同級目錄

const path = require('path');

module.exports = {

// 讀取src文件夾中的main.js(入口文件)

entry: './src/main.js',

output: {

// path.resolve解析當前相對路徑的絕對路徑 path.join

path: path.resolve(__dirname, 'dist'),

filename: 'bundle.js',

},

};

含義:讀取當前目錄下src文件夾中的main.js(入口文件)內容,把對應的js文件打包,打包后的文件放入當前目錄的dist文件夾下,打包后的js文件名為bundle.js。

5.執行編譯命令

webpack

編譯后查看dist文件夾下的bundle.js文件,會發現該文件包含了上面兩個js文件的內容

6.創建index.html頁面,引用bundle.js

打開index.html頁面,查看頁面效果

3.2 css打包

1.安裝style-loader和css-loader

webpack本身只能處理JavaScript模塊,若要處理其他類型的文件,需要使用loader進行轉換。

Loader 可以理解為是模塊和資源的轉換器,它本身是一個函數,接受源文件作為參數,返回轉換的結果。這樣,我們就可以通過?require?來加載任何類型的模塊或文件,比如CoffeeScript、 JSX、 LESS 或圖片。首先我們需要安裝相關Loader插件,css-loader 是將 css 裝載到 javascript;style-loader 是讓 javascript 認識css

cnpm?install?style‐loader?css‐loader?‐‐save‐dev

2.修改webpack.config.js,添加module

const path = require('path');

module.exports = {

entry: './src/main.js',

output: {

// path.resolve解析當前相對路徑的絕對路徑 path.join

path: path.resolve(__dirname, 'dist'),

filename: 'bundle.js',

},

module: {

rules: [

// webpack讀取loader時,是從右到左

// loader執行順序是從右到左以管道方式鏈式調用

// css-loader是將css裝載到javascript,style-loader是讓javascript認識css

{ test: /\.css$/, use: ['style-loader','css-loader'] }

]

}

};

3.src里創建css文件夾,css下創建css1.css

body{

background: red;

}

4.修改main.js,引入css1.css

require('./css1.css');

5.重新運行webpack

6.運行index.html,查看頁面背景色

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/535077.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/535077.shtml
英文地址,請注明出處:http://en.pswp.cn/news/535077.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

conda失敗說沒有寫權限_愛情中,為什么男生表白失敗,女生還說可以繼續做朋友,想過沒有...

在愛情中,不是每個男生都是幸運的,也不是每次的表白都是如你所愿的。有成功總有失敗,成功是喜悅的,但是失敗卻是痛苦的。不過有的時候男生和女生表白以后,女生對男生說了這樣的一段,其實我希望以后我們還是…

Mybatis-Plus中Wrapper條件構造器的使用

寫在前面 🛫更多知識總結見Mybatis-Plus專欄 🚕內容總結自尚硅谷楊博超老師的視頻 🚒博主對于該知識尚在學習階段 🚄如果發現存在問題請毫不吝嗇的指出 🚀🚀扎哇太棗糕的博客首頁🚀&#x1f680…

springboot設置默認值_線上Bug無法復現?老司機教你一招,SpringBoot遠程調試不用愁!...

前言在部署線上項目時,相信大家都會遇到一個問題,線上的 Bug 但是在本地不會復現,多么無奈。此時最常用的就是取到前端傳遞的數據用接口測試工具測試,比如 POSTMAN,復雜不,難受不?今天陳某教你一…

Mybatis-Plus的分頁 樂觀鎖插件 通用枚舉 多數據源

寫在前面🛫更多知識總結見Mybatis-Plus專欄 🚕內容總結自尚硅谷楊博超老師的視頻 🚒博主對于該知識尚在學習階段 🚄如果發現存在問題請毫不吝嗇的指出 🚀🚀扎哇太棗糕的博客首頁🚀🚀…

學python哪個網站好-有哪些值得推薦的Python學習網站|

現在那個網站可以學習python爬蟲? 為大家分享Python學習經驗: 1、尋找一本Python書籍,要求淺顯易懂、全面細致程較好,專注于這一本,從頭開始研究,把整本書掌握透徹。 2、找一個項目練手,熟悉基礎后&#xf…

等待的操作過時_不會過時的6種網站seo優化操作

SEO優化一直在變化,百度和谷歌的算法也在不斷的迭代更新,所以競爭永遠不會停止。今天小編就來給大家分享一下,6種不會過時的網站seo優化操作。1.保持正常優化為網站訪客提供高質量的內容、卓越的用戶體驗和安全性以及卓越的技術網站。這可能需…

java的for循環取出數據只是拿到最后一個_一問SQL優化就無從藏身?那只是你對原理的精髓掌握不深

?曾幾何時,我信誓旦旦的認為只要 SQL 寫的好,面試過程永不倒。結果在一次又一次的征途中,「最終還是以完敗落下帷幕」。結果都源于注重使用而忽略原理,從而不知也不了解「SQL」優化應如何面對。讀文的你,如今可有這樣…

SpringBoot前后端分離解決跨域問題的三種解決方案

🚀🚀扎哇太棗糕的博客首頁🚀🚀** 文章目錄🍊什么是跨域🍊跨域問題的解決策略🍊三種解決方法🍊什么是跨域 想要知道什么是跨域的話,我們可以通過一個小案例簡單了解一下跨…

ant design vue 樹形控件_官宣!vue.ant.design 低調上線

點擊右上方,關注開源中國OSC頭條號,獲取最新技術資訊官宣!官宣!官宣!是的,你沒看錯就是那個 https://vue.ant.design。至此,Ant Design 已經全面覆蓋了 React、Angular、Vue 三大前端框架&#…

哪款筆記本電腦好_掃地機器人哪個牌子好?口碑最好的掃地機器人

隨著智能家居的普及,讓我們的生活變得越來越智能。掃地機器人的出現完美解決了寵物的毛發問題,為自己騰出了大量的時間。掃地機器人絕對能提升你的生活品質,通過機器內建的智能清潔模式、自定義規劃區域進行打掃,使用手機APP進行控…

使用mybatisplus的通用枚舉實現存儲顯示相分離

狡兔尚且三窟,多學一招總沒錯吧? 🚀🚀扎哇太棗糕的博客首頁🚀🚀 🌏 拋出問題 如果讓你實現這么一個功能:將性別使用數字存儲到數據庫中,但是前端需要獲取到的是具體的性…

wifi卡慢延遲高_家里WiFi特別卡,網絡延遲高,可能不是網速的問題

原標題:家里WiFi特別卡,網絡延遲高,可能不是網速的問題隨著科技走向我們的身邊,網絡的覆蓋力度也是越來越大,相信很多人的家中都是有安裝WiFi的,然后往往在家中使用的過程中都會碰到這樣的情況,…

voc2007數據集_【目標檢測數據集】PASCAL VOC制作

【VOC20072012】數據集地址:https://pjreddie.com/projects/pascal-voc-dataset-mirror/PASCAL VOC為圖像識別和分類提供了一整套標準化的優秀的數據集,用于構建和評估用于圖像分類(Classification),檢測(O…

JDK和JRE的區別?main方法的注意點?強制和自動類型轉換?

💡涉及的知識點速通🛫 JDK和JRE傻傻分不清?🛫 HelloWorld的輸出都經歷了啥?🛫 Java的三個版本都是啥?🛫 關于main方法你都知道啥?🛫 強制and自動類型轉換都是啥?各位小…

java將date類型轉成yyyymmdd_java中的Date怎么轉換成YYYYMMDD形式?

展開全部SimpleDateFormat inSdf new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);創建SimpleDateFormat對象的時候使用帶Locale的構e69da5e6ba9062616964757a686964616f31333365633938造參數因為你的星期和月份是用E文寫的 所以parse回來的時候自…

安卓10不支持qmc解碼_Root神器支持安卓10 面具Magisk v20.4+Magisk Manager v7.5.1

Magisk的功能和xposed框架的功能差不多,也有很多插件可安裝,而且自帶root,刷入這個Magisk后你的rom同時也就有root了(支持安卓7.0,7.1,8.0,8.1,9,10)這也是目前安裝8.1root的普遍方法,因為目前s…

centos7配置br0_Docker CentOS7 修改網絡配置與宿主機橋接

Docker CentOS7 修改網絡配置與宿主機橋接1、創建橋接物理網絡(1)新建br0橋接網絡,brctl show可以查看(需安裝bridge-utils)(2)將宿主機物理網卡IP、掩碼、網關、dns(或者dhcp)配置到br0上(3)刪除宿主機物理網卡IP、掩碼、網關、dns(或者dhcp)配置(4)將宿主機物理網…

==和equals判等、空串和null串、字符串常用API

💡涉及的知識點速通🛫 關于變量和常量你都知道啥?🛫 &和&&、|和||有什么區別?🛫 關于字符串的問題你能答對幾道?🪂 可以修改一個字符串中的值嗎?🪂 字符串使用…

倆臺電腦怎么設置同一局域網_方法 | 把手機上的照片傳到電腦上

我想把手機上的照片/視頻傳到電腦上怎么辦? 什么云盤,手機助手等等全扔到一邊去,不用。請讓我慢慢道來:現在,人們手機用的越來越多,即使在大街上,到處都是“低頭族”。但是,有好多小伙伴問&…

數據持化技術的發展演變(SQL、JDBC、mybatis)

文章目錄1 簡單SQL語句1.1 查詢1.2 新增1.3 修改1.4 刪除1.5 多表查詢2 JDBC2.1 什么是JDBC2.2 什么是jar和maven2.3 JDBC的使用2.4 JDBC總結3 mybatis3.1 什么是ORM?為什么是ORM不是JDBC?3.2 mybatis的使用3.3 mybatis總結4 mybatis與jdbc的邏輯相同處環境配置 j…