zoukankan      html  css  js  c++  java
  • vue-x和axios的学习

    axios的使用

    使用原因:因为vue本身就带有处理dom的功能,不希望再有其他操作dom的插件,所以用axios代替了jquery

    功能:发送xhr请求

    下载: $ npm install axios

    使用:将axios挂载到vue的原型上,那么在各个组件中都能使用,因为面向对象(继承)

    Vue.prototype.$requests = Axios  //取名尽量见名知意
    

    基本使用

    axios.get('/user?ID=12345')
      .then(function (response) {
        // handle success
        console.log(response);
      })
      .catch(function (error) {
        // handle error
        console.log(error);
      })
    

    文档链接:https://www.kancloud.cn/yunye/axios/234845

    vue-x

    下载:npm i vue-x -S

    工作流程

    vue-x更方便的为我们提供数据的更改和获取

    • State定义内部数据
    • Action 提交的是 mutation,而不是直接变更状态,可以包含任意异步操作
    • Mutations必须是同步函数,action提交过来的数据可直接在内部进行修改
    • 大致流程:vue-component通过dispatch到actions再commit提交到mutations,mutations内部进行数据更改
    • 其他组件要获取state中的数据,直接通过computed监听数据

    使用

    // main.js
    import Vuex from 'vuex'
    Vue.use(Vuex)  //如果是模块化使用,则必须use
    
    const store = new Vuex.Store({  
        state:{
            xxx:null
        },
        actions:{
            action(context,data){
                context.commit('mutation',data)
            } 
        },
        mutations:{
            mutation(state,data){
                state.xxx = data  //最终是在mutations中变更数据
            }
        }
    })
    
    new Vue({
        store //挂载到vue实例
    })
    
    
    // 其他组件
    created(){
        this.$store.dispatch('action',value)
    }
    computed:{
       courseDetail() {
         return this.$store.state.datail
       }
    }
    
  • 相关阅读:
    查看Linux主机CPU及内存信息
    linux配置java环境变量(详细)
    Linux安装Redis
    Linux关闭防火墙
    使用Unison同步服务器目录
    Nginx详细配置
    CentOS命令行无线上网
    SQL Server查询所有的表名/空间占用量/行数
    CentOS安装Nginx安装详解
    基于 Django 2.0.4 的 djcelery 配置
  • 原文地址:https://www.cnblogs.com/williamweson/p/12981686.html
Copyright © 2011-2022 走看看