1. vue-cli

    # 全局安装 vue-cli
    $ npm install --global vue-cli
    # 创建一个基于 webpack 模板的新项目
    $ vue init webpack my-project
    # 安装依赖
    $ cd my-project
    $ npm install
    $ npm run dev
  2.  vue-router

    import Router from 'vue-router'
    
    Vue.use(Router)
    
    let router=new Router({
    routes: [//路径和页面一一对应
    {
    path: '/home',
    name: 'Home',
    component: Home
    },
    { path: '/',
    redirect: '/home' },//重定向
    ]
    });
    //名称代替路径
    <router-link class="footer-item" exact to="home">首页</router-link>
    //打开页面前验证
    router.beforeEach((to, from, next) => {
    if(to.path!=="/logon"&&!store.state.userInfo.Account){
    next({ path: '/logon' })
    return;
    }else{
    next();
    }
    })
  3. vue-resource

    //config/index.js 设置接口代理

    proxyTable
    : {
    '/api':
    {
    target: 'http://11.111.249.12:11',
    changeOrigin: true, //跨域设置
    pathRewrite:
    {
    '^/api': ''
    }
    }
    }
    //设置请求头main.js
    
    import VueResource from 'vue-resource'
    
    Vue.use(VueResource);
    
    Vue.http.interceptors.push(function(request, next) {
    
      // modify method
    request.method = 'POST';
    // modify headers
    request.headers.set
    ('token',“token”); // continue to next interceptor
    next(); });
  4. vuex

    //它主要分四个部分,state,getters,mutations,actions
    //'./store/user'
    import Vue from 'vue';
    import Vuex from 'vuex';
    Vue.use(Vuex); const userStore=new Vuex.Store({
    state:{
    userInfo:{
    userName:""
    }
    },
    getters:{
    getUserInfo(state){
    return state.userInfo;
    }
    },
    mutations:{
    setUserInfo(state,userInfo){
    state.userInfo=userInfo;
    }
    },
    actions:{
    setUserInfo({commit}){
    commit('setUserInfo');
    }
    } }) export default userStore;
    import store from './store/user';
    //...
    new Vue({
    el: '#app',
    router,
    store,
    template: '<App/>',
    components: { App }
    })
    //设置使用指定的方法
    import store from '@/store/user';
    store.commit('setUserInfo',user)
    //获取使用指定的方法
    //可以直接通过store.state获取变量,也可以通过getters接口

    computed
    :{
    //将一个数组转为用逗号分隔的参数序列
    ...mapGetters({username:'getUserName'})
    },

     

vue全家桶(vue-cli,vue-router,vue-resource,vuex)-1的更多相关文章

  1. Vue全家桶了解一下(待补充)

    vue全家桶了解一下 一.vue+vue-router+vuex+axios1.vue:使用vue-cli,生成最基本的vue项目2.vue-router:vue项目中的路由管理插件3.vuex:vu ...

  2. 【实战】Vue全家桶(vue + axios + vue-router + vuex)搭建移动端H5项目

    使用Vue全家桶开发移动端页面. 本博文默认已安装node.js. github链接 一.准备工作 安装vue npm install vue 安装脚手架vue-cli npm install -g ...

  3. 用 Vue 全家桶二次开发 V2EX 社区

    一.开发背景 为了全面的熟悉Vue+Vue-router+Vuex+axios技术栈,结合V2EX的开放API开发了这个简洁版的V2EX. 在线预览 (为了实现跨域,直接npm run dev部署的, ...

  4. Vue全家桶

    简介 “简单却不失优雅,小巧而不乏大匠”. Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计. 为什么 ...

  5. 使用vue全家桶制作博客网站

    前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...

  6. 转载: 使用vue全家桶制作博客网站 HTML5 移动网站制作的好教程

    使用vue全家桶制作博客网站   前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue. ...

  7. Vue全家桶介绍

    一直不清楚全家桶是什么玩意,上网搜了一下,才知道就是平时项目中使用的几个依赖包,下面分享一下 Vue 全家桶介绍 Vue有著名的全家桶系列,包含了vue-router(http://router.vu ...

  8. 一个简单的假vue全家桶(vue+vue-router+require)

    首先说明我觉得这是一个比较好理解的vue全家桶(虽然是假的),模块化也是用require来做的,而且如果后期有必要压缩我也会用gulp来做 1.依赖个个本地模块,require只是用来载入page,这 ...

  9. 升级vue全家桶过程记录

    背景 如果你使用了element-ui的el-tabs组件,并且想要单独升级element-ui至2.10.0,你会发现,使用了el-tabs组件的页面只要打开就卡死.原因是element-ui~2. ...

  10. Nuxt + Vue 全家桶

    引子 情由无中有,一旦有了,便万劫不复 简介 “简单却不失优雅,小巧而不乏大匠”. Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建 ...

随机推荐

  1. pytorch预训练模型的下载地址以及解决下载速度慢的方法

    https://github.com/pytorch/vision/tree/master/torchvision/models 几乎所有的常用预训练模型都在这里面 总结下各种模型的下载地址: 1 R ...

  2. 查看 chrome 浏览器中的 Headers

    查看 chrome 浏览器中的 Headers, Response 信息:

  3. 记录tiny6410 jlink 命令行调试linux-2.6.38内核

    1\首先启动nandflash uboot->linux内核->文件系统,进入文件系统命令行 2\启动JLinkGDBServer -device ARM11 3\启动arm-none-e ...

  4. vue项目中postcss-pxtorem的使用及webpack中的配置 css中单位px和em,rem的区别

    移动手机版要求我们在制作嵌入h5的时候去适配不同的手机.适配有多重模式,有flex.百分比等.字体大小的控制也有px.百分比.rem等单位,webpack中 px转rem. vue项目中postcss ...

  5. 腾讯云服务器使用smtp发送邮件

    问题:在腾讯云服务器上使用自编写的邮件服务失败.查其原因,是该邮件服务调用smtpclient.Send(mailMessage)时,出现错误:由于连接方在一段时间后没有正确答复或连接的主机没有反应, ...

  6. MySQL5.7 多源复制监控脚本

    #!/bin/bash :<<BLOCK Version : v1.0 2018-12-21 MySQL多源复制检测脚本 监控配置放在 $CONFIG_FILE 中,内容如下 #mysql ...

  7. Codeforces 333E Summer Earnings - bitset

    题目传送门 传送门I 传送门II 传送门III 题目大意 给定平面上的$n$个点,以三个不同点为圆心画圆,使得圆两两没有公共部分(相切不算),问最大的半径. 显然答案是三点间任意两点之间的距离的最小值 ...

  8. 《Java语言实现快速幂取模》

    快速幂取模算法的引入是从大数的小数取模的朴素算法的局限性所提出的,在朴素的方法中我们计算一个数比如5^1003%31是非常消耗我们的计算资源的,在整个计算过程中最麻烦的就是我们的5^1003这个过程 ...

  9. JAVA中字符串比较equals()和equalsIgnoreCase()的区别

    1.使用equals( )方法比较两个字符串是否相等(区分大小写) 2.使用equalsIgnoreCase( )方法比较两个字符串是否相等(不区分大小写) boolean equalsIgnoreC ...

  10. mysql57 centos7 使用

    ####### yum repository install #######mysql yum repo http://repo.mysql.com/wget http://repo.mysql.co ...