您好,登錄后才能下訂單哦!
本篇內容主要講解“vue的webpack框架如何搭建”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“vue的webpack框架如何搭建”吧!
1、想要使用vue,我首先該怎么做?
想要學習vue,我第一件事是去vue官網看簡介,仔細一看,vue現在有1.X和2.X的區別,很好,我果斷選擇2.X。
選中了vue版本,我上知乎搜索了vue框架搭建的方式,看了前輩的各種分享,了解到一個叫做 cooking 的好玩意,好在哪里?
cooking 的目標是將你從繁瑣的構建配置中解放出來,同時還省去每個項目都要安裝一堆開發依賴的麻煩。基于 webapck 但更友好的配置項、易用的擴展配置機制,讓你專注項目忘掉配置。
哇,看到cooking官網介紹的這么好,我果斷按照它的教程去做,瞎搞了一下下,發現用的不爽啊,一鍵配置環境看起來很高大上,可是還得去學習cooking的使用,而且本地得安裝cooking,搞得我頭暈,雖然在瀏覽器成功訪問到了網頁,但我還是放棄了這個好玩意。
這時候只能自己從0開始搭建項目了。
2、在github新建vue2-web項目。
打開github首頁,點擊start a project。
接著你會看到Create a new repository,需要你填寫項目信息,這個步驟跳過。
然后項目就建好了,clone到本地。
3、初始化npm
用shell或者cmd進入項目根目錄,執行下面的命令,選項什么的直接跳過,最后會生成package.json文件。
npm init
4、安裝webpack
沒有webpack就活不下去的感覺,但是配置webpack也會讓人活不下去,太難記住webpack的配置項了,不過別擔心,我已經幫你搞定這一步了,咋們都必須使用webpack2啊。
npm install --save-dev webpack
還需要前端服務器,做熱更新呀,webpack-dev-server登場。
npm install --save-dev webpack-dev-server
5、創建webpack.config.js文件
和react中的webpack配置文件沒什么區別,只是稍微改動一個地方即可移植過來使用。
千萬不要把js和vue放到一起,不起作用的,必須分開,必須,這個坑我已經踩過了,為了找這個坑,浪費了我好幾個小時,最最最隱蔽的一個地方。
rules: [{ test: /\.js$/, use: ['babel-loader'], exclude: /node_modules/, include: resolve('src') },{ test: /\.vue$/, use: ['vue-loader'], exclude: /node_modules/, include: resolve('src') },
6、創建.babelrc文件。
babel少不了,注意這里不是用react了,而是vue,包括下面幾個插件,flow-vue、transform-vue-jsx。
{ "presets": ["es2015", "flow-vue", "stage-0", "stage-2"], "plugins": ["transform-vue-jsx"], "comments": false, "env": { "production": { "plugins": [ ["transform-runtime", { "polyfill": false, "regenerator": false }] ] } } }
7、在package.json添加start命令
直接使用webpack-dev-server啟動,哇塞,一堆報錯,說少了哪個module,這個簡單,因為配置文件里面引用的一堆module,還沒有安裝到項目呢,這時候一個個安裝好就行了。
"start": "webpack-dev-server",
8、項目入口main.js文件。
這個文件名自己喜歡咋取就咋取,代碼挺簡單的,實例化一個Vue和路由,是不是和react的入口文件很像?當然,我做的是SPA,所以采用單入口的形式,如果是非SPA模式,就不是這種配置方式了。
import Vue from 'vue'; import App from './App.vue'; import VueRouter from 'vue-router'; import routes from './routes'; import VueResource from 'vue-resource'; Vue.use(VueResource); //http請求注冊 Vue.use(VueRouter); //路由注冊 // 實例化路由 const router = new VueRouter({ // mode: 'history', //H5 路由模式,需要服務端做渲染防止404錯誤 base: __dirname, linkActiveClass: 'on', routes }) let render = new Vue({ router, el: '#app', render: h => h(App) }); render; // if (module.hot) { // 非必須 // module.hot.accept('./App.vue', () => render); // }
9、路由routes.js
路由和react也非常像(簡直一樣好不),這里的vue頁面采用.vue后綴的方式來寫。
import Home from './components/home/Home.vue'; import Bang from './components/bang/Bang.vue'; export default [ { path: '/', redirect: 'home' }, { path: '/home', component: Home }, { path: '/bang', component: Bang } ]
10、單頁頂層容器App.vue
從index進來,就是這個文件,現在開始學習vue的精華。
template:vue的模板語言,也叫作jsx。
transition:過渡動畫。
router-view:路由顯示容器,通過router-link跳轉加載的.vue會在這個容器渲染。router-link被我封裝到nav.vue組件里面了。
script:導入了當前頂級容器需要用到的vue組件,包括頭部、導航、首頁。
style: 當前組件的樣式,我配置了less語法支持。將style改成<style>即可寫less。
<template> <div> <app-header logo="logo" ></app-header> <app-nav></app-nav> <transition name="fade" mode="out-in"> <router-view class="view"></router-view> </transition> </div> </template> <script> import Header from './components/common/Header.vue'; import Nav from './components/common/Nav.vue'; import Home from './components/home/Home.vue'; export default { name: 'App', components: { "app-header": Header, "app-nav": Nav, "app-home": Home } }; </script> <style> body, html { font-size: 12px; margin: 0; padding: 0; } </style>
運行效果圖:
Vue是一套用于構建用戶界面的漸進式JavaScript框架,Vue與其它大型框架的區別是,使用Vue可以自底向上逐層應用,其核心庫只關注視圖層,方便與第三方庫和項目整合,且使用Vue可以采用單文件組件和Vue生態系統支持的庫開發復雜的單頁應用。
到此,相信大家對“vue的webpack框架如何搭建”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。