新版本的vue脚手架配置,clone 就可以用在自己的demo中

github: https://github.com/liuxingzhijian1320/vue-axios-fetch
1.

    vue init webpack vuedemo
    cd vuedemo && npm i
    npm run dev
  • 注意: 页面是不会自动打开的,需要手动打开地址来运行项目

    1. 修改配置项 config/index.js
  • 自动打开浏览器
autoOpenBrowser : true // 设置自动打开浏览器
  • 设置ip
npm install ip
// 添加以下代码
const ip = require('ip')
const IP = ip.address();
// host 修改
 host: IP,
  • 重新启动项目
npm run dev
  • 配置反向代理
  proxyTable: {
    '/api': {
        target: 'https://moment.douban.com',
        changeOrigin: true,
        pathRewrite: {
            '^/api': '/api'
        }
    },
},
  1. axios的封装 具体详见代码
    • 部分代码
import request from 'src/api/index';
import errorHandler from 'src/api/error-handler.js';
import { getUser } from 'src/assets/scripts/local-storage.js';
import Cookies from 'js-cookie'

/**
 * 代理 HTTP 请求;
 * @param  {Object}  obj      http 请求参数
 * @param  {Boolean} loading    是否显示 loading 弹窗
 * @param  {Boolean} alertInfoError 是否弹出捕获的服务器返回的逻辑错误
 * @param  {Boolean} alertServerError 是否弹出捕获的服务器错误
 * @return {Promise}            resolve(res); res 是 http 请求的结果
 */
export default (
    options, { loading = true, alertInfoError = true, alertServerError = true } = {}
) => {
    return new Promise(async(resolve, reject) => {
        try {
            loading && Indicator.open(); // loading
            // const { token } = Cookies.get();
            options = {
                    ...options,
                    headers: {
                        // Authorization: `Bearer${token ? ` ${token}` : ''}`, // iOS9 有空格的 bug,
                        'Halo-App': `merchant`,
                        ...options.headers
                    }
                }
                // alert(JSON.stringify(options))
                // options.headers = options.headers || {};
                // options.headers.Authorization = `Bearer${token ? ` ${token}` : ''}`; // iOS9 有空格的 bug
                // options.headers['Halo-App'] = 'merchant';
                // options.headers = options.headers || {};


            const response = await request(options);
            // alert(11, JSON.stringify(response))
            return resolve(response);
        } catch (response) {

            // alert(JSON.stringify(response.data))
            const { alert: _alert, message } = await errorHandler(response, {
                alertInfoError,
                alertServerError,
            });
            // eslint-disable-next-line
            return reject({ response, alert: _alert, message });
        } finally {

            loading && Indicator.close(); // close loading
        }
    });
};
  1. sass的语法的配置
npm install --save-dev sass-loader
npm install --save-dev node-sass  (注:sass-loader依赖于node-sass)
  1. rem的布局配置

  2. mixins 和 filters的使用

  3. mint-ui的引入方法

猛戳我�� 具体的查看代码(懒得粘贴复制代码)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值