javascript - 动态创建模型
问题描述
这解释起来有点复杂。我需要使用动态 html 代码中的属性创建一个对象。让我用一个例子来解释它。
我有一个像这样的数据对象
var myObject = {Field1: 'Value1', Field2: 'Value2'};
我有一个带有我的对象属性的数组,如下所示:
var myArray = ['Field1', 'Field2'];
我使用数组<input>
在 for 循环中生成,如下所示:
<div v-for="property in myArray">
<input type="text" :value="myObject[property]" />
</div>
现在,我需要从生成的输入中获取值(可以是对象或数组)。
我知道我可以简单地接受myObject
,但问题是值可能会改变(用户可以更改数据,因为输入是正确的方法)。我也不想将输入绑定到,myObject
因为即使输入值发生变化,myObject
也需要保持初始状态。
问题是如何创建一个新对象并将我的输入绑定到该新对象?
解决方案
您从原始对象创建对象:
data: {
objectValues = Object.assign({}, myObject)
}
那么您可以在模板中使用该对象:
<div v-for="property in myArray">
<input type="text" v-model="objectValues[property]" />
</div>
推荐阅读
- c# - Xamarin 在依赖注入中覆盖 RemoteControlReceived
- javascript - JavaScript 三角错误方向如何改正?
- spring-boot - 用于本机查询的 Spring Boot JPA 自定义数据源
- java - 如何将值添加到与前一个值匹配的数组
- angular - 角度 slickgrid 日期格式更改仅显示在网格中
- xml - SonarQube 需要单独的 xsd 架构文件并显示错误:“错误解析 XSD 文件中的组件”
- vb.net - 自动填充贴纸并打印多个
- clojure - 调用 clojure.core/fn 不符合规范
- wpf - 如何替换 MahApps MetroWindow 的 Maximize/RestoreDown 图标
- r - 在R中之前和之后的非NA值之间通过公式的结果填写NA