Vue.js mixin介绍当地的州

时间:2017-09-18 09:31:04

标签: javascript vue.js vuejs2 vue-component

我有Vue mixin,看起来像这样:

/* eslint-disable */
const amount = null;
const currency = '';

export default {
    methods: {
        formatPrice(amount, currency) {
            this.amount = amount;
            this.currency = currency;

            const isInt = Number.isInteger(this.amountToPrice);

            return isInt ? this.stripDecimalZeroes : this.localePrice;
        }
    }
}

我通过在这个文件中加入2个变量引入了一些本地状态,但是如果我删除eslint-disable,ESLint会给我一个“无阴影”错误。

我可以做些什么来在我的mixin中正确引入一个本地状态。我不想将状态传递给每个函数,当逻辑被封装在这个mixin中时,我不觉得我有义务这样做。

当我将本地状态金额称为no-shadow-error时,我不理解this.state,并且它运行良好。

2 个答案:

答案 0 :(得分:1)

作为替代方案,您可以将变量分配到created () {}挂钩中的created() { this.amount = null; this.currency = ''; } ,如下所示:

AFRAME

答案 1 :(得分:0)

通过简化以下操作来修复它:

介绍状态:

const state = {
    amount: null,
    currency: ''
};

像这样称呼州:

export default {
    methods: {
        formatPrice(amount, currency) {
            state.amount = amount;
            state.currency = currency;