Vue.js 如何在 v-model 输入的数组中定位名称未知的对象

Vue.js How to target object with unknown name in an array on v-model input

我正在生成一个带有自动生成名称的对象 onclick。名称每次都会不同。然后我想通过使用 v-model 的输入更改对象的值。如果名称未知,如何定位对象?这是我目前所拥有的:

<ul>
  <li v-for="type in types" @click="addNew(type)">{{ type }}</li>
</ul>

<form v-if="Object.keys(newFields).length !== 0">

  <input type="text" v-model="newFields[0].?????????">

</form>

  <script>
  new Vue ({
    el: '#app',
    data: {
      types: [
        'date',
        'number',
        'currency',
        'text',
      ],
      savedFields: [

      ],
      newFields: [

      ]
    },
    methods: {
      addNew: function (type) {

        const name = `${type}-${Object.keys(this.savedFields).map(key => key === type).length}`;

        if (Object.keys(this.newFields).length == 0) {
          this.newFields = Object.assign({}, this.newFields, {
            [name]: {
              'type': type,
              'displayLabel': '',
              'defaultValue': '',
            }
          });
        }
      },
    },
  });

您可以将名称保存为反应数据。例如,将其保存在 currentName

<script>
    new Vue({
        el: "#app",
        data: {
            //...
            currentName: null
        },
        methods: {
            addNew: function (type) {
                const name = ""; //...

                this.currentName = name;

                //...
            }
        }
    });

</script>

以及 v-model、

<input type="text" v-model="newFields[0][currentName]">