uniapp组件间传参的方法总结~

1、uniapp除了支持vue中的props和$emit方法实现父子,子父参数传递,这里就不做演示了。

2、uniapp还支持路由参数传递,在目标组件中用onload接收。可参考我的上一个博客。

3、uniapp中任意组件传参,包含页面与tabBar组件传递。

//发送方
uni.$emit('update',{msg:'页面更新'})
//接收方
uni.$on('update',function(data){
	console.log('监听到事件来自 update ,携带参数 msg 为:' + data.msg);
})

4、uniapp还支持vuex状态管理工具、使用方法与vue2一致。

4.1 安装vuex:npm i vuex -s,当版本出现问题时可指定版本号即可,例如:npm i vuex@3.6.2 -s

4.2 在main.js同级目录下新建store文件夹,里面新建index.js文件。

//导入vue及vuex
import Vue from 'vue'
import Vuex from 'vuex'
//将vuex安装为插件
Vue.use(Vuex)
//创建vuex实例并导出
export default new Vuex.store({
    state:{
        num:18
    },
    mutations:{
        add(state,e){
            state.num++
        }
    },
    actions:{
        newadd(context){
            // context 是一个与 store 实例具有相同方法和属性的 context 对象
            setTimeout(()=>{
                context.commit('add',e)
            },2000)
        }
    },
    getter:{
        nums:(state,e)=>{
            return state.num+e
        }
    }
})

4.3在main.js中配置。

import store from './store'

new Vue({
    store,
    render:h=>h(APP)
}).$mount('#app')

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值