編碼的世界 / 優質文選 / 生涯

VUE 引入公共css樣式的方法


2022年7月10日
-   

初學vue,在項目中引入公共css樣式的時候發現在index.html頁面直接使用  <link rel="stylesheet" type="text/css" href="./src/css/index.css">  引入樣式是無效的,通過查閱資料得知這麼引入需要css文件在static文件夾下(具體原因我也不清楚,百度有說config文件中index.js文件的  assetsSubDirectory: 'static',  參數決定的),那麼問題來了,引入公共樣式應該怎麼引入呢?
項目文件:

第一種方式:css樣式在static文件夾下,在index.html中直接<link rel="stylesheet" type="text/css" href="./src/css/index.css">引入第二種方式:css在src文件夾下,通過在src文件夾下的main.js文件中使用es6的引入方式進行引入:
import "./css/index.css" 

第三種方式:直接在需要對應的vue中使用es6進行引入:
<style scoped>
@import "../css/index.css";
</style>

目前我就找出這幾種方式,網上有說static是通過webpack打包以後的文件,所以引入直接<link rel="stylesheet" type="text/css" href="./src/css/index.css">即可,具體我也不是很了解,如果有大佬知道還請麻煩告知。
 
針對cingig中的assetsSubDirectory屬性有這樣的一個解釋:
build.assetsSubDirectory
被webpack編譯處理過的資源文件都會在這個build.assetsRoot目錄下,所以它不可以混有其它可能在build.assetsRoot裏面有的文件。例如,假如build.assetsRoot參數是/path/to/distbuild.assetsSubDirectory 參數是 static, 那麼所以webpack資源會被編譯到path/to/dist/static目錄。
每次編譯前,這個目錄會被清空,所以這個只能放編譯出來的資源文件。
static/目錄的文件會直接被在構建過程中,直接拷貝到這個目錄。這意味著是如果你改變這個規則,所有你依賴於static/中文件的絕對地址,都需要改變。
 

熱門文章