天天看點

前端工程化(一)---工程目錄搭建一些知識點搭建過程

由于一直在搞後端開發,對于前端内容的掌握一直停留在css、jquery、js、html這類的基礎應用上。

一下子接觸到前端工程化、spa這類的東西,曲線有些陡峭,整個過程經曆了諸多曲折。将收集到的知識總結一下,摻雜着一些個人的了解,不一定準确。

開始搭建之前,先要搞清楚一些概念。

一些知識點

1、前端工程化

  記得在剛剛進入軟體行業的時候,項目組中一般都會有美工這個角色,負責設計系統需要的各種圖檔、切圖,設計系統整體的樣式。上面的工作完成後就可以交給背景開發人員了,後者負責背景邏輯,從資料庫中讀取資料并渲染到頁面上。前端的所有工作圍繞着切圖、調樣式開展

  現在的前端趨勢是什麼?就是工程化,工作的模式和後端開發一樣,也是多子產品多人協作開發(這也就誕生了CommonJS、AMD/CMD、require這些子產品化标準),那麼就需要進行工程化,否則代碼很難管理與維護。前端承擔的任務也比原來繁重了很多,後端隻需要提供接口API,剩下的視圖層的渲染工作全部由前端完成。前後端分工越來越清晰,前後端在項目開發過程中不再互相制約,前端與後端已經分離

  同時,前端開發已經不是所見即所得了,比如es6、less是不能夠得到所有浏覽器的完美支援的,但是這些東西還能加快我們的開發效率,那怎麼權衡呢?那麼就需要解釋為浏覽器能夠完美支援的css、js文法

2、webpack

  一些基本概念請參照:官方教程

    官方的解釋:webpack 是一個現代 JavaScript 應用程式的靜态子產品打包器(module bundler)

在我自己的項目場景中,webpack就是将es6、less、vue、圖檔、字型這些資源通通都打包為浏覽器能夠解析的js、css代碼

3、Node.js 的 包管理器npm

    全球最大的開源生态系統,在前端項目建構過程中,會不斷的使用該指令去添加項目對各種第三方子產品的依賴,例如:添加html-webpack-plugin的引用

cnpm install html-webpack-plugin --save-dev           

複制

    給我的感覺它就向背景建構工具Maven,Maven是通過在pom檔案中添加子產品的坐标來添加依賴,例如:添加對Mybatis的依賴

<dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>${version.mybatis-spring}</version>
        </dependency>           

複制

搭建過程

以下過程都是基于webpack4的

1、安裝node.js

進入 https://nodejs.org/en/download/ 根據自己電腦的系統不同,下載下傳對應的安裝檔案,進行安裝

2、由于npm下載下傳資源很慢,是以推薦使用阿裡的 cnpm來取代npm

3、安裝webpack,我裝的是4.5.0版本

sudo cnpm install [email protected] -g           

複制

4、安裝後,發現webpack -h不好使,提示要安裝webpack-cli

sudo cnpm install webpack-cli -g
sudo cnpm install webpack-cli -D           

複制

 這兩步都要執行

5、初始化工程

建立工程目錄

mkdir syInfoApp           

複制

進入工程目錄

cd syInfoApp           

複制

初始化

cnpm init           

複制

安裝後,目錄下會産生一個package.json檔案,它類似于Maven中的pom。裡面記錄了依賴的子產品資訊、版本資訊還有項目的一些基本資訊。網上的一些教程,使用已經搭建好的環境進行講解,當看到package.json檔案的時候,裡面一大堆的東西讓人頭暈,還是從頭一點兒點兒來比較清晰

前端工程化(一)---工程目錄搭建一些知識點搭建過程

6、在項目中安裝webpack,以便在項目中可以使用

進入項目所在目,執行如下指令

cnpm install [email protected] --save-dev           

複制

這時可以看到在package.json中看到對webpack的依賴資訊了

前端工程化(一)---工程目錄搭建一些知識點搭建過程

7、建立項目基本目錄

參照約定,建立以下目錄

/src:存放源碼目錄

/src/assets:存放項目公用的圖檔、js、樣式、模闆、資料的資源

/src/components:存放封裝好的前端元件,比如圖檔上傳元件、樹元件、清單元件等等

/src/routes:存放vue-router的路由配置

/src/views:存放應用的視圖,比如使用者管理頁面(叫頁面不确切,因為我們是單頁面應用,整個系統隻有一個頁面。是以叫html片段更貼切)

/dist:存放建構後的檔案

8、建立表要的檔案

app.vue:這是基于Vue開發的根執行個體。

index.js:負責将app.vue挂載到項目的首頁,也就是index.html上(index.html在哪?後續會介紹)

前端工程化(一)---工程目錄搭建一些知識點搭建過程

另外一點兒建議:

對于新手最好不要使用官方提供的指令行工具的方式,建構單頁面工程。

這種方式确實友善快捷,能夠一鍵搭建工程,但這樣隻能讓自己上來一臉茫然,最好還是經曆手動搭建這一過程。

這也是官方的建議

# 全局安裝 vue-cli
$ npm install --global vue-cli
# 建立一個基于 webpack 模闆的新項目
$ vue init webpack my-project
# 安裝依賴,走你
$ cd my-project
$ npm run dev           

複制