vue移動(dòng)端項(xiàng)目搭建

使用框架:vue

使用插件:vue-cli萍诱,vue-loader,axios 铭腕,px2rem

使用UI框架:mint-ui

第一步柿究、先用 vue-cli 直接搭建項(xiàng)目

先全局安裝 vue-cli

npm install --g vue-cli

然后執(zhí)行創(chuàng)建項(xiàng)目語(yǔ)句
vue-cli 3.x則用

vue create project-name

vue-cli 2.x 用(我這用的是2.x)

vue init webpack project-name
搭建

ESlint 是統(tǒng)一代碼風(fēng)格的
下面兩個(gè)是測(cè)試用的
最后是選擇install 依賴包,默認(rèn)npm就行了孤里,安裝慢的話可以用淘寶的鏡像 cnpm伏伯。
項(xiàng)目搭建好在項(xiàng)目根目錄運(yùn)行

npm run dev

就可以得到這樣一個(gè)頁(yè)面


默認(rèn)首頁(yè)

搭建好獲得這個(gè)項(xiàng)目結(jié)構(gòu)


圖為借鑒來(lái)的
第二步、引入使用的插件
(1)axios(數(shù)據(jù)請(qǐng)求捌袜,類似ajax说搅,vue-resource)
npm install axios -s

安裝好后,開(kāi)始配置axios虏等,和封裝請(qǐng)求弄唧,在src下創(chuàng)建api文件夾用于放置請(qǐng)求文件
http.js ↓

目錄

創(chuàng)建http.js适肠,用于放置封裝文件和基本配置

import axios from 'axios'
import QS from 'qs'
//默認(rèn)接口url前綴
axios.defaults.baseURL = 'http:// 你的api路徑';
//超時(shí)時(shí)間,超過(guò)5秒提示請(qǐng)求超時(shí)
axios.defaults.timeout = 5000;
//post的默認(rèn)請(qǐng)求頭
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
/**
 * get方法候引,對(duì)應(yīng)get請(qǐng)求
 * @param {String} url [請(qǐng)求的url地址]
 * @param {Object} params [請(qǐng)求時(shí)攜帶的參數(shù)]
 */
export function get(url, params) {
    return new Promise((resolve, reject) => {
        axios.get(url, {
            params: params
        }).then(res => {
            resolve(res.data)
        }).catch(err => {
            reject(err.data)
        })
    })
}

/**
 * post方法侯养,對(duì)應(yīng)post請(qǐng)求
 */
export function post(url, params,config) {
    return new Promise((resolve, reject) => {
        axios.post(url, QS.stringify(params),config)
            .then(res => {
                resolve(res.data)
            }).catch(err => {
                reject(err.data)
            })
    })
}

創(chuàng)建模塊的請(qǐng)求js
login.js

import {get, post } from './http'
export const login = data => post('login_query_Personnel', data)
export const queryCode = data => get('query_Personnel_openid',data)

在組件使用

import { login } from "../api/login";
methods:{
  tologin(){
    login({
        phone: this.phone,
        password: this.password,
        openid:localStorage.getItem("openid")
      }).then(res => {
        console.log(res);
        if (res.resultCode == 0) {
          Toast("登錄成功");
          localStorage.setItem('loginInfo',JSON.stringify(res.data))
          this.$router.go(-1)
        } else {
          Toast(res.resultMess);
        }
      });
}
}
(2)引入mint-ui
npm install mint-ui -s

按需引入組件

<mt-header title="登錄">
</mt-header>
import { Header, Field, Toast } from "mint-ui";
(3)引入px2rem,適配手機(jī)端
npm install postcss-px2rem -s

記得刪除index.html<meta name='viewport' >標(biāo)簽
在.postcssrc.js中配置

// https://github.com/michael-ciniawsky/postcss-load-config

module.exports = {
  "plugins": {
    "postcss-import": {},
    "postcss-url": {},
    // to edit target browsers: use "browserslist" field in package.json
    "autoprefixer": {},
    'postcss-px2rem-exclude':{
      remUnit:75  //按照設(shè)計(jì)圖
    }
  }
}

第三步澄干、配置路由

設(shè)置路由路徑及相對(duì)應(yīng)的組件
及是否需要登陸

{ path: '/baoxiu', name: 'baoxiu', component: baoxiu, meta: { requireLogin: true } },

判斷是否需要登錄逛揩,在路由中設(shè)置 router.beforeEach

router.beforeEach((to, from, next) => {
    if (to.matched.some(record => record.meta.requireLogin)) {  //判斷該路由是否需要登錄權(quán)限
        if (localStorage.getItem('loginInfo')) {        //判斷當(dāng)前用戶的登錄信息loginInfo是否存在
            next()
        } else {
            next({
                path: '/login',
                query: { Rurl: to.fullPath }        //保存上一個(gè)頁(yè)面
            })
        }
    } else {
        next()
    }
})

參考于https://www.cnblogs.com/gaosong-shuhong/p/9300319.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市麸俘,隨后出現(xiàn)的幾起案子辩稽,更是在濱河造成了極大的恐慌,老刑警劉巖从媚,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逞泄,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拜效,警方通過(guò)查閱死者的電腦和手機(jī)喷众,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)紧憾,“玉大人侮腹,你說(shuō)我怎么就攤上這事〉纠” “怎么了父阻?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)望抽。 經(jīng)常有香客問(wèn)我加矛,道長(zhǎng),這世上最難降的妖魔是什么煤篙? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任斟览,我火速辦了婚禮,結(jié)果婚禮上辑奈,老公的妹妹穿的比我還像新娘苛茂。我一直安慰自己,他們只是感情好鸠窗,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布妓羊。 她就那樣靜靜地躺著,像睡著了一般稍计。 火紅的嫁衣襯著肌膚如雪躁绸。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音净刮,去河邊找鬼剥哑。 笑死,一個(gè)胖子當(dāng)著我的面吹牛淹父,可吹牛的內(nèi)容都是我干的株婴。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼暑认,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼困介!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起穷吮,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎饥努,沒(méi)想到半個(gè)月后捡鱼,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡酷愧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年驾诈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片溶浴。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡乍迄,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出士败,到底是詐尸還是另有隱情闯两,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布谅将,位于F島的核電站漾狼,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏饥臂。R本人自食惡果不足惜逊躁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望隅熙。 院中可真熱鬧稽煤,春花似錦、人聲如沸囚戚。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)驰坊。三九已至绿店,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背假勿。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工借嗽, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人转培。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓恶导,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親浸须。 傳聞我的和親對(duì)象是個(gè)殘疾皇子惨寿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容