vue.js - 方法被多次调用,但应该被调用一次。不明白为什么?
问题描述
我正在尝试测试,但我遇到了一个我找不到解决方案的问题,这是我的测试。我知道这不是很好,但我需要解决方案。
这是我的方法:
import { Meteor } from 'meteor/meteor'
import { ValidatedMethod } from 'meteor/mdg:validated-method'
import { CallPromiseMixin } from 'meteor/didericis:callpromise-mixin'
import Journal from '../journals/journals'
import JournalDetails from '../journals/journal-details'
export const journalMigrateTotDecimal = new ValidatedMethod({
name: 'app.journalMigrateTotDecimal',
mixins: [CallPromiseMixin],
validate: null,
async run() {
if (Meteor.isServer) {
let res
console.log('start....');
let journals = await Journal.find().lean()
res = await Journal.deleteMany({})
res = await Journal.insertMany(journals)
console.log('done journal!');
let journalDetails = await JournalDetails.find().lean()
res = await JournalDetails.deleteMany({})
res = await JournalDetails.insertMany(journalDetails)
console.log('done journal details!');
return res
}
},
})
致电客户:
<ElButton type="primary" @click="migrateJournalData">
Journal
</ElButton>
methods: {
migrateJournalData() {
this.loading = true
journalMigrateTotDecimal
.callPromise()
.then(res => {
this.loading = false
console.log('res', res)
})
.catch(err => {
this.loading = false
console.log('err', err)
})
},
},
问题是该方法被多次调用,我不知道为什么。我不知道如何解决它。
解决方案
推荐阅读
- c - 程序不抑制整数,尽管浮点数被抑制
- architecture - 考虑到运行成本,我应该将 UI 和后端分开还是结合起来
- sql - 进行查询以显示不匹配的数据
- laravel - 如何在几周内使用 Carbon 获得 2 个日期之间的差异
- python - Python 日期对象在午夜转换为 UTC 时间戳
- flutter - 有没有办法在 Flutter 的 InputDecoration 中设置文本的颜色?
- c# - 序列化一个锯齿状数组,并保存为 JSON
- python-3.x - 由对象 assert_call_once_with 创建的 Pytest 对象
- python - 一定时间后迭代next
- linux - 如果文件的内容匹配,则重命名大量文件夹