Javascript Vue.js mixin引入本地状态

Javascript Vue.js mixin引入本地状态,javascript,vue.js,vuejs2,vue-component,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 is

我有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;
        }
    }
}
我在这个文件中添加了两个变量,引入了一点局部状态,但是如果我删除
ESLint disable
,ESLint会给我一个“无阴影”错误

我该怎么做才能在我的mixin中正确地引入一个本地状态呢。我不想把状态传递给每个函数,我也不觉得当逻辑封装在这个mixin中时我有义务这样做


此外,当我将我的本地州金额引用为
this.state
时,我不理解
无阴影错误
,它工作正常。

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

介绍国家:

const state = {
    amount: null,
    currency: ''
};
这样称呼国家:

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

或者,您可以在
created(){}
hook中将变量分配给
this
,如下所示:

created() {
    this.amount = null;
    this.currency = '';
}