Javascript Vue.js mixin引入本地状态
我有Vue 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
/* 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 = '';
}