本文介紹了vue 項(xiàng)目常用加載器及配置詳解,分享給大家,具體如下:
1.安裝sass:
1.1 由于sass-loader依賴于node-sass,所以在安裝sass-loader的同時(shí)還需安裝node-sass
npm install --save-dev node-sassnpm install --save-dev sass-loader
1.2 安裝完成后修改 <style>標(biāo)簽:
<style lang="scss"></style>
2.安裝axios:
axios用于數(shù)據(jù)請(qǐng)求,在Vue1.0的時(shí)候有一個(gè)官方推薦的 ajax 插件 [vue-resource](https://github.com/pagekit/vue-resource),但是自從 Vue 更新到 2.0 之后,官方就不再更新 vue-resource,推薦使用axios。
2.1 安裝:
npm install axios --save-dev
2.2. 在main.js中引入:
import axios from 'axios'Vue.prototype.$http = axios
2.3. 在組件中使用:
this.$http({ method:'get', url:'http://breadoffer.com/api/artcile', params:{ platformCode:'pc' // 用于向后臺(tái)傳參 }}).then(response => { console.log(response)})3.安裝mock:
3.1. 安裝:
npm install mockjs --save-dev
3.2. 使用:在src下新建mock.js文件
import Mock from 'mockjs';export default Mock.mock('http://platform.breadoffer.com/api/oversea', { "data":{ "breadActivities|9":[{ "title":"@csentence(5,25)", "desc":"@paragraph(2)", "beiginTime":"@date", "endTime":"@date", "stateName":"進(jìn)行中", }], }})3.3. 在需要數(shù)據(jù)的組件中引入:
import datas from '../mock' // 根據(jù)自己實(shí)際目錄引入 methods: { request() { this.$http({ method: 'get', url: 'http://platform.breadoffer.com/api/oversea', params: { courseMaxCount: 2, //設(shè)置課程返回的數(shù)據(jù)為2條 teacherMaxCount: 10, //設(shè)置導(dǎo)師返回的數(shù)據(jù)為10條 } }).then(response => { console.log(response) }).catch(error => { console.log(error) }) }, }4.安裝 lib-flexible: --實(shí)現(xiàn)移動(dòng)端自適應(yīng)
4.1 安裝:
npm install lib-flexible --save
在實(shí)際開(kāi)發(fā)過(guò)程中,使用flexible插件時(shí)會(huì)自動(dòng)把px轉(zhuǎn)換成rem單位,在vue項(xiàng)目中我們使用px2rem這個(gè)工具進(jìn)行轉(zhuǎn)換,所以需要安裝px2rem加載器:
npm install px2rem-loader
4.2 在main.js中引入:
import 'lib-flexible'
4.3 配置px2rem-loader: (在build/untils.js)
remUnit 的意思是1rem=多少像素, 結(jié)合lib-flexible,我們將px2remLoader的option.remUnit 設(shè)置成設(shè)計(jì)稿寬度的1/10,假設(shè)我們的設(shè)計(jì)稿寬度是750,則remUnit為75,然后在cssLoader后面加一個(gè)px2remLoader即可
var px2remLoader = { loader: 'px2rem-loader', options: { remUnit: 75 } } // generate loader string to be used with extract text plugin function generateLoaders (loader, loaderOptions) { const loaders = [cssLoader,px2remLoader] if (loader) { loaders.push({ loader: loader + '-loader', options: Object.assign({}, loaderOptions, { sourceMap: options.sourceMap }) }) }
新聞熱點(diǎn)
疑難解答
圖片精選