将值放在对象中以及获取旧值的最佳方式

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,然后您可以稍后访问它,而无需为此进行存储。