将值放在对象中以及获取旧值的最佳方式
put the values in the object and best way for get old value
大家早上好,
这里我有两个小问题我认为我的代码没有优化,我想得到你的一些帮助,因为我尝试了更多的解决方案但它不起作用。
我使用 v-model 修改了我的对象,但无法保存修改,所以我将在 axios 中搜索我数据库中的对象,然后为其提供初始值。我的对象来自启动组件的父组件,在父组件中我创建了一个 v-for
<span v-if="number.edit">
<i class="fas fa-window-close text-danger" @click="onClickClose"></i>
</span>
onClickClose(){
axios.get('number/'+this.number.ref)
.then(({data: data}) => {
console.log(data);
this.number.status = data[0].status;
this.number.number = data[0].number;
this.number.route = data[0].route;
this.number.uri = data[0].uri;
this.number.refcli = data[0].refcli;
this.number.refcarrier = data[0].refcarrier;
this.number.porting_date = data[0].porting_date;
this.number.portout_date = data[0].portout_date;
this.number.emergency_active = data[0].emergency_active;
this.number.emergency_zipcode = data[0].emergency_zipcode;
this.number.memo = data[0].memo;
this.number.carrier = data[1];
this.number.edit = null;
});
},
除了在 axios 上执行此操作之外,还有其他方法吗?一个即使在修改后(VueX?)也存储基本值的地方,然后从我的对象中手动执行除每个字段之外的其他操作。我想要这样的东西。
axios.get('number/'+this.number.ref)
.then(({data: data}) => {
console.log(data);
this.number ={
status : data[0].status,
number : data[0].number,
route : data[0].route,
uri : data[0].uri,
refcli : data[0].refcli,
refcarrier : data[0].refcarrier,
porting_date : data[0].porting_date,
portout_date : data[0].portout_date,
emergency_active : data[0].emergency_active,
emergency_zipcode : data[0].emergency_zipcode,
memo : data[0].memo,
carrier : data[1],
edit : null,
}
});
谢谢大家的帮助,表达不好请见谅。让我知道,我会更好地解释它。
尝试将您的代码缩短为(主要是 es6):
.then(({ data: {0: firstElData}, {1: secondElData }) => {
const { status, number, route, uri, refcli, refcarrier, porting_date,
portout_date, emergency_active, emergency_zipcodem memo } = firstElData
this.number = { status, number, route, uri, refcli, refcarrier,
porting_date, portout_date, emergency_active, emergency_zipcodem memo }
this.number.carrier = secondElData
this.number.edit = null;
虽然我不是 100% 确定你在问什么。
当然,如果您只需要存储原始值,那么当它们进入时将它们放入一个变量中originalData
,然后您可以稍后访问它,而无需为此进行存储。
大家早上好,
这里我有两个小问题我认为我的代码没有优化,我想得到你的一些帮助,因为我尝试了更多的解决方案但它不起作用。
我使用 v-model 修改了我的对象,但无法保存修改,所以我将在 axios 中搜索我数据库中的对象,然后为其提供初始值。我的对象来自启动组件的父组件,在父组件中我创建了一个 v-for
<span v-if="number.edit">
<i class="fas fa-window-close text-danger" @click="onClickClose"></i>
</span>
onClickClose(){
axios.get('number/'+this.number.ref)
.then(({data: data}) => {
console.log(data);
this.number.status = data[0].status;
this.number.number = data[0].number;
this.number.route = data[0].route;
this.number.uri = data[0].uri;
this.number.refcli = data[0].refcli;
this.number.refcarrier = data[0].refcarrier;
this.number.porting_date = data[0].porting_date;
this.number.portout_date = data[0].portout_date;
this.number.emergency_active = data[0].emergency_active;
this.number.emergency_zipcode = data[0].emergency_zipcode;
this.number.memo = data[0].memo;
this.number.carrier = data[1];
this.number.edit = null;
});
},
除了在 axios 上执行此操作之外,还有其他方法吗?一个即使在修改后(VueX?)也存储基本值的地方,然后从我的对象中手动执行除每个字段之外的其他操作。我想要这样的东西。
axios.get('number/'+this.number.ref)
.then(({data: data}) => {
console.log(data);
this.number ={
status : data[0].status,
number : data[0].number,
route : data[0].route,
uri : data[0].uri,
refcli : data[0].refcli,
refcarrier : data[0].refcarrier,
porting_date : data[0].porting_date,
portout_date : data[0].portout_date,
emergency_active : data[0].emergency_active,
emergency_zipcode : data[0].emergency_zipcode,
memo : data[0].memo,
carrier : data[1],
edit : null,
}
});
谢谢大家的帮助,表达不好请见谅。让我知道,我会更好地解释它。
尝试将您的代码缩短为(主要是 es6):
.then(({ data: {0: firstElData}, {1: secondElData }) => {
const { status, number, route, uri, refcli, refcarrier, porting_date,
portout_date, emergency_active, emergency_zipcodem memo } = firstElData
this.number = { status, number, route, uri, refcli, refcarrier,
porting_date, portout_date, emergency_active, emergency_zipcodem memo }
this.number.carrier = secondElData
this.number.edit = null;
虽然我不是 100% 确定你在问什么。
当然,如果您只需要存储原始值,那么当它们进入时将它们放入一个变量中originalData
,然后您可以稍后访问它,而无需为此进行存储。