39 lines
889 B
TypeScript
39 lines
889 B
TypeScript
import { defineStore } from 'pinia'
|
|
import { ref } from 'vue'
|
|
|
|
export const useEmailStore = defineStore('email', () => {
|
|
const emailFormList = ref<any[]>([])
|
|
|
|
// 添加邮件配置数据
|
|
const addEmailData = (data: any) => {
|
|
emailFormList.value.push(data)
|
|
}
|
|
|
|
// 更新邮件配置数据
|
|
const updateEmailData = (index: number, data: any) => {
|
|
if (index >= 0 && index < emailFormList.value.length) {
|
|
emailFormList.value[index] = data
|
|
}
|
|
}
|
|
|
|
// 删除邮件配置数据
|
|
const removeEmailData = (index: number) => {
|
|
if (index >= 0 && index < emailFormList.value.length) {
|
|
emailFormList.value.splice(index, 1)
|
|
}
|
|
}
|
|
|
|
// 清除所有 email 相关数据
|
|
const clearEmailData = () => {
|
|
emailFormList.value = []
|
|
}
|
|
|
|
return {
|
|
emailFormList,
|
|
addEmailData,
|
|
updateEmailData,
|
|
removeEmailData,
|
|
clearEmailData
|
|
}
|
|
})
|