我有一个类似这样的JSON对象,
[
{
"column": {
"name": "31_12_2021",
"display_name": "31/12/2021",
"default_value": "",
"pk": true,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [
{
"style": {}
},
{
"style": {}
}
]
},
{
"column": {
"name": "quick",
"display_name": "quick",
"default_value": "",
"pk": false,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [
{
"style": {}
},
{
"style": {}
}
]
},
{
"column": {
"name": "333",
"display_name": "333",
"default_value": "",
"pk": false,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [
{
"style": {}
},
{
"style": {}
}
]
}
]
我正在我的vue模板中循环使用这个来创建一个选择菜单,
<div v-for="(c, i) in columns" :key="i">
<select v-model="c.column.data_type">
<option value="1">Data Type 1</option>
<option value="2">Data Type 2</option>
<option value="3">Data Type 3</option>
<option value="4">Data Type 4</option>
</select>
</div>
通过将select绑定到data_type,每次我进行select更改时,它都会更新数据/json中该对象的数据。我想知道的是,是否可以在更改之前获取旧值?
我试着做了一些事情,
watch: {
columns: {
deep: true,
handler(newValue, oldValue) {
//do some comparions here
}
}
}
但是,新值和旧值似乎是相同的?
如果您只想查看一个属性是否发生了更改,那么最好在select中使用< code>@input事件。我在下面提供了一个工作片段,展示了如何获取新旧值。
Vue.config.productionTip = false;
Vue.config.devtools = false;
new Vue({
el: "#app",
data: () => {
return {
columns: [{
"column": {
"name": "31_12_2021",
"display_name": "31/12/2021",
"default_value": "",
"pk": true,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [{
"style": {}
}, {
"style": {}
}]
}, {
"column": {
"name": "quick",
"display_name": "quick",
"default_value": "",
"pk": false,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [{
"style": {}
}, {
"style": {}
}]
}, {
"column": {
"name": "333",
"display_name": "333",
"default_value": "",
"pk": false,
"hidden": false,
"data_type": "1"
},
"header_row": {
"style": {}
},
"data_rows": [{
"style": {
}
}, {
"style": {
}
}]
}]
}
},
methods: {
onDataTypeChange: function(oldValue, newValue) {
alert("Changed from " + oldValue + " to " + newValue);
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div v-for="(c, i) in columns" :key="i">
<select v-model="c.column.data_type" @input="onDataTypeChange(c.column.data_type, $event.target.value)">
<option value="1">Data Type 1</option>
<option value="2">Data Type 2</option>
<option value="3">Data Type 3</option>
<option value="4">Data Type 4</option>
</select>
</div>
</div>
问题内容: 我是自动化测试和dbUnit的新手。因此,感谢您的建议。 我将创建一个测试套件,它将以以下方式运行: 创建一个内存中的H2数据库 运行DDL脚本以创建表 运行dbUnit来插入将被所有测试使用的初始数据(我们称其为 STATE0 )。 运行测试 到那里对我来说看起来不错,但是我不明白,是在测试运行并更改数据后如何将数据库还原为 STATE0 ? 我可以使用dbUnit吗? 还是其他?
本文向大家介绍vue将data恢复到初始状态 && 重新渲染组件实例,包括了vue将data恢复到初始状态 && 重新渲染组件实例的使用技巧和注意事项,需要的朋友参考一下 1. 将data恢复到初始状态 Object.assign(this.$data, this.$options.data()) // 初始化data 这里的 this.$options.data() 作为源对象, this.$d
概述 Sublime Text 可以通过删除 data 文件夹的方式恢复到初始状态。不同操作系统这个文件夹的位置也不同: OS X:~/Library/Application Support/Sublime Text 3 Windows:%APPDATA%\Sublime Text 3 Linux:~/.config/sublime-text-3 恢复到初始状态,你需要: 退出 Sublime T
问题内容: 如果我做 我可以看到所有可用的软件包。 我今天早上将其更新为最新版本,但是现在我需要恢复到以前的版本。我试过了 但这没用。如何指定要使用的版本? 问题答案: 我不得不改用该函数:
我正在做一个练习题,练习它 这个问题基本上是在PriorityQueue和某个k中传递,然后返回该PriorityQueue中的第k个最小值。您还需要将PriorityQueue恢复到其初始状态,并可以使用一个堆栈或队列作为辅助数据结构。 我的更高层次的伪思想是,因为PriorityQueue已经充当了最小堆,从JavaPriorityQueue,我真正要做的(我的算法)是: > 从Priorit
我有一些自动测试,可以插入一些数据,并将其保存到Oracle XE数据库,版本11g。目前,测试完成后,通过SQL手动删除数据。但是我想知道有没有其他方法可以使回滚更容易,更有效?我正在阅读关于恢复点,想知道这是我正在寻找的功能吗? 恢复的过程会消耗多少内存?使用它来满足我的需要是一种良好的做法吗?或者它可能是回滚数据插入的其他方式吗? 谢谢