修改文章编辑,默认时间错误

修改文章必填项显示和提示
This commit is contained in:
jacky 2024-04-25 13:24:41 +08:00
parent ca16ebcf49
commit 8a6a2c6852
1 changed files with 27 additions and 13 deletions

View File

@ -174,15 +174,10 @@ const fullscreenLoading = ref(true)
const isEdit = ref(false) // isEdit = true const isEdit = ref(false) // isEdit = true
const fetcherArticleId = ref(0) // id const fetcherArticleId = ref(0) // id
const elEditFormRef = ref() const elEditFormRef = ref()
const checkCategories = (rule, value, callback) => {
if (categoryIdList.value.length === 0) { const checkContent = (rule, value, callback) => {
callback(new Error(rule.message)) const content = value.replace(/<\/?.+?\/?>|\r|\n|\s*/g, '')
} else { if (content === '') {
callback()
}
}
const checkChannels = (rule, value, callback) => {
if (channelIdList.value.length === 0) {
callback(new Error(rule.message)) callback(new Error(rule.message))
} else { } else {
callback() callback()
@ -196,13 +191,14 @@ const formRules = reactive({
{ required: true, message: '请输入文章名称', trigger: 'blur' } { required: true, message: '请输入文章名称', trigger: 'blur' }
], ],
categories: [ categories: [
{ validator: checkCategories, message: '请选择文章分类', trigger: 'blur' } { required: true, message: '请选择文章分类', trigger: 'blur' },
], ],
channels: [ channels: [
{ validator: checkChannels, message: '请选择所属栏目', trigger: 'blur' } { required: true, message: '请选择所属栏目', trigger: 'blur' },
], ],
content: [ content: [
{ required: true, message: '请输入文章内容', trigger: 'blur' } { required: true, message: '请输入文章内容', trigger: 'blur' },
{ validator: checkContent, message: '请输入文章内容', trigger: 'blur' }
], ],
publishDate: [ publishDate: [
{ required: true, message: '请选择发布时间', trigger: 'blur' } { required: true, message: '请选择发布时间', trigger: 'blur' }
@ -296,7 +292,7 @@ const emptyForm = () => {
desc: '', desc: '',
source: '', source: '',
url: '', url: '',
publishDate: formatDate(new Date()), publishDate: getCurrentDatetime(),
articleTime: '', articleTime: '',
tags: '', tags: '',
imgs: '', imgs: '',
@ -304,6 +300,17 @@ const emptyForm = () => {
console.log(editForm.value) console.log(editForm.value)
} }
const getCurrentDatetime = () => {
const options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit', weekday: 'short' };
const date = new Date()
console.log('toISOString', date.toISOString())
console.log('toUTCString', date.toUTCString())
console.log('toLocaleString', date.toLocaleString('zh-CN', { timeZone: 'Asia/Shanghai', ...options }))
console.log('toString', date.toString())
return date.toISOString()
// return date.toLocaleDateString + 'T' + date.toLocaleTimeString + 'Z08:00'
}
// //
const openPage = async (params) => { const openPage = async (params) => {
showDrawer.value = true showDrawer.value = true
@ -440,10 +447,17 @@ const handleFormSubmit = async valid => {
if (editForm.value.articleTime === '') { if (editForm.value.articleTime === '') {
editForm.value.articleTime = null editForm.value.articleTime = null
} }
//
editForm.value.categories = categoryIdList.value.map(item => parseInt(item, 10))
editForm.value.channels = channelIdList.value.map(item => parseInt(item, 10))
elEditFormRef.value.validate(async valid => { elEditFormRef.value.validate(async valid => {
if (!valid) { if (!valid) {
return return
} }
//
editForm.value.categories = null
editForm.value.channels = null
const rel = { const rel = {
categoryIds: categoryIdList.value.map(item => parseInt(item, 10)), categoryIds: categoryIdList.value.map(item => parseInt(item, 10)),
channelIds: channelIdList.value.map(item => parseInt(item, 10)), channelIds: channelIdList.value.map(item => parseInt(item, 10)),