上篇我們建立了 Nuxt.js
環境,應該可以看到資料夾內變得琳瑯滿目,多了一堆資料夾跟文件,看的灰煞煞。
別緊張,其實只是把一個專案的內容檔案分門別類而已,讓我們一個一個來了解一下吧。
assets
:放靜態內容,像是 scss
、img
之類的,放在這邊的東西就會透過 webpack
幫我們編譯囉,圖片也會經過處理,順便分享一下通常我的結構會是這樣的├─ assets
│ ├─ img
│ └─ scss
components
:放 Vue
的元件,像是 Navbar
、Dropdowns
、Alert
等等layouts
:頁面佈局,以電商網站而言就會分前台、後台佈局,如下圖。前台的 layout
程式碼示範,在 layouts
資料夾新增 FrontEnd.vue
<template>
<navbarComponent/>
<nuxt />
<footerComponent/>
</template>
<nuxt/>就當作<router-view/>使用
在 page
的頁面需套用 layout
佈局時,增加 layout
設定即可,如下
<template>
<!-- Your template -->
</template>
<script>
export default {
layout: 'FrontEnd'
// page component definitions
}
</script>
layouts的檔案除了可以當layout之外,其實就跟page的檔案一樣
middleware
:進入頁面前的驗證,像是驗證是否已登入。pages
:每一個獨立的頁面,像是登入頁、商品頁、結帳頁面。plugins
:插件。static
:放置不需要被 webpack
打包的內容。store
: Vuex
使用。看完有沒有覺得跟 Vue-Cli
目錄結構差不多呢?
只是多了一些功能,像是威力加強版的概念。
預計明天會針對 pages
部分做比較詳細的說明,也會說明 router
的配置。
因我實力薄弱,資歷尚淺,為了盡量避免給予錯誤的資訊,說明的都是我比較有把握的內容,所以內容看起來可能很粗淺。只是我想還是盡力而為,對於我自己研究使用上踩到的小小的坑,能分享我的見解給遇上跟我一樣問題的人,若能多少為你們帶來一些協助的話,那就真是太好了。
如前輩大德有發現遺漏或解釋錯誤,懇請鞭我(小小力),感謝!