在使用vue-cli2初始化項目后,會出現如下的一個目錄結構:
下面依次簡單簡述下各目錄和文件的作用:
build:webpack的配置,但這里主要是插件、項目運行相關的配置
config:也是webpack的配置,但不同是他主要是配置一些變量。和springboot的application.yml類似
node_modules:依賴保存的地方
src:寫代碼的地方
static:靜態資源存放的地方,比如html,css等等,不過像圖片的話是放在src/assets目錄下的
.babelrc:babel的配置文件;babel是能將ES6轉化成ES5的工具
.editorconfiig:文本配置,也就是像文本代碼,如html,css,js等使用的編碼,縮進格式,換行符的配置
.eslintignore:eslint是用來約束代碼規范的,該代碼也就是說哪些文件是不需要約束的,忽視掉
.eslintrc:eslint的配置文件
.gitigore:在上傳到github時,哪些文件不需要上傳
index.html:項目的入口頁面
package.json:配置項目的基本信息和依賴的大概版本,這里強調一下,該文件的依賴版本只是指定大概的范圍,具體真是下載的版本以package-lock.json為主
package-lock.json:記錄node_modules依賴的真是版本
README.md:項目的說明書這樣子
上面的目錄結構說完了,也順便拓展下其他東西,我們看到cli2生成的package.json中的腳本:
主要是dev和bulid這2個腳本:
dev:是在開發時啟動項目使用的腳本,一般都會使用webpack-dev-server作為本地服務器來熱加載,方便測試
build:打包項目到dist,但我們仔細看,cli2這使用的是node命令去執行 build文件夾下的build.js來打包;在沒學習node前,我們對JS的印象是,它得在html中進行引入使用,最終在瀏覽器才能進行執行。好像從來沒有獨立運行過JS文件吧?
不過像其他編程語言,比如Java,C....他們是可以獨立運行的,但JS不行。但后來就有人用C++開發node,里面用到V8引擎,這樣就能對JS文件解析並執行了,因此我們通常說node是JS的運行環境或服務器,就是因為他能獨立執行JS文件。
然后再來看項目目錄下的index.html:
代碼是十分簡潔的,一般我們不會去改這個文件
還有Vue實例,通常是在src的main.js來寫的:
也要記住,通常這個Vue實例也不會去動他,index.html最終頁面的展示是交付給App.vue來展示的,Vue實例相當根組件,App.vue是他的子組件,但對於很多來講,App.vue是入口組件,也可以這么說啦,仁者見仁,智者見智!