jtshushu
jtshushu
  • 发布:2020-05-08 10:24
  • 更新:2020-05-08 11:06
  • 阅读:950

uniapp用vuex中多语言和推送引入 vue computed用法问题?

分类:uni-app

vue computed用法
求解决

vue computed用法中的
多语言和推送功能一起用
当他们分别用是可以的

 <view>  
            <text class="title">推送消息title:{{pushMessage.id}}</text>  
            <text class="title">推送消息content:{{pushMessage.title}}</text>  
            <text class="title">推送消息payload:{{pushMessage.titelok}}</text>  
 </view>  

//单独用  
export default {  
computed: {  
              //start 多语言      
                i18n(){  
                    //return this.$t('index')    
                    return this.$i18nMsg()              
                }  
///多语言正常  

//单独用 推送正常   
    import {  
        mapState  
    } from 'vuex';  

export default {  
 computed: mapState(['pushMessage']),  

我要结用 多语言和推送请问题 大佬们我要怎么用呢

//
main.js

import Vue from 'vue'  
import App from './App'  

import store from './store'  

import Json from './Json' //测试用数据   

import VueI18n from 'vue-i18n'    //后加的  
Vue.use(VueI18n)   //后加的  

Vue.config.productionTip = false  

//start 商城加的  转送数据  
const msg = (title, duration=1500, mask=false, icon='none')=>{  
    //统一提示方便全局修改  
    if(Boolean(title) === false){  
        return;  
    }  
    uni.showToast({  
        title,  
        duration,  
        mask,  
        icon  
    });  
}  
const json = type=>{  
    //模拟异步请求数据  
    return new Promise(resolve=>{  
        setTimeout(()=>{  
            resolve(Json[type]);  
        }, 500)  
    })  
}  

const prePage = ()=>{  
    let pages = getCurrentPages();  
    let prePage = pages[pages.length - 2];  
    // #ifdef H5  
    return prePage;  
    // #endif  
    return prePage.$vm;  
}  

Vue.config.productionTip = false  
Vue.prototype._fire = new Vue();  
//Vue.prototype._store = store;  
Vue.prototype.$api = {msg, json, prePage};  

//end  商城加入   转送数据  

//start 商城  

//end 商城   

// Vue.mixin({  
//   onShow() {  
//     jwx.configWeiXin(jweixin => {  
//       jweixin.hideOptionMenu();  
//     });  
//   }  
// });  

//start 后面加的   
const i18n = new VueI18n({  
  locale: 'en-US',      
  messages: {  
        'en-US' : require('common/lang/en.js') , //英文语言包  
        'zh-CN' : require('common/lang/cn.js')  //中文繁体语言包  
    }   
})  

Vue.prototype._i18n = i18n     

//存数据e   
Vue.prototype.$i18nMsg = function(){  
   // return i18n.messages[i18n.locale]    //换语言成功   

    //console.log(i18n.messages[i18n.locale]);  

      return i18n.messages[i18n.locale]  

}   

//end  后面加的  

// 这里是重要的一步 这里不写 app会找不到store  
Vue.prototype.$store = store  

//start  后面加的  
Vue.prototype.$eventHub = new Vue();  

//end  后面加的  

App.mpType = 'app'  

const app = new Vue({  

     i18n, //后面加的  
    ...App,  
     store  
})  
app.$mount()

index.vue

2020-05-08 10:24 负责人:无 分享
已邀请:
jtshushu

jtshushu (作者) - 擅长:PHP-Thinkphp Python MUI UniApp Vuejs Bootstrap Jq Logo设计 广告设计 网页设计 有项目上需要联系我微信号:jtshushu66

vuex computed
二个一起怎么用呢??求大神帮助

jtshushu

jtshushu (作者) - 擅长:PHP-Thinkphp Python MUI UniApp Vuejs Bootstrap Jq Logo设计 广告设计 网页设计 有项目上需要联系我微信号:jtshushu66

已解决

computed: {   
              //start 多语言      

              ...mapState(['pushMessage']),  
                i18n(){  
                    //return this.$t('index')    
                    return this.$i18nMsg()              
                }  
}  

多方法
一定要注意
...mapState
前部有三个点一定不能去除
重要事说三遍
前部有三个点一定不能去除
前部有三个点一定不能去除
前部有三个点一定不能去除

该问题目前已经被锁定, 无法添加新回复