feat:信息提交接口联调
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const { isOpen, context, form, closeConsultation } = useConsultation()
|
const { isOpen, context, form, closeConsultation } = useConsultation()
|
||||||
|
const config = useRuntimeConfig()
|
||||||
|
const apiBase = config.public.officialApiBase || '/api'
|
||||||
const formElement = ref(null)
|
const formElement = ref(null)
|
||||||
const nameInput = ref(null)
|
const nameInput = ref(null)
|
||||||
const errors = ref({})
|
const errors = ref({})
|
||||||
@@ -32,8 +34,20 @@ async function submitForm() {
|
|||||||
|
|
||||||
status.value = 'submitting'
|
status.value = 'submitting'
|
||||||
try {
|
try {
|
||||||
// 后续接入 CRM 或官网线索接口时,在此替换为真实请求。
|
await $fetch('/public/leads', {
|
||||||
await new Promise((resolve) => setTimeout(resolve, 650))
|
baseURL: apiBase,
|
||||||
|
method: 'POST',
|
||||||
|
body: {
|
||||||
|
name: form.value.name.trim(),
|
||||||
|
company: form.value.company.trim(),
|
||||||
|
contact: form.value.contact.trim(),
|
||||||
|
industry: form.value.industry || context.value.industry || '',
|
||||||
|
need: form.value.need || '',
|
||||||
|
requirement: form.value.message.trim(),
|
||||||
|
sourcePage: route.fullPath,
|
||||||
|
sourceCta: context.value.source || context.value.title
|
||||||
|
}
|
||||||
|
})
|
||||||
status.value = 'success'
|
status.value = 'success'
|
||||||
} catch {
|
} catch {
|
||||||
status.value = 'error'
|
status.value = 'error'
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ export function useConsultation() {
|
|||||||
industry: '',
|
industry: '',
|
||||||
need: '',
|
need: '',
|
||||||
message: '',
|
message: '',
|
||||||
consent: false
|
consent: true
|
||||||
}))
|
}))
|
||||||
|
|
||||||
function openConsultation(payload = {}) {
|
function openConsultation(payload = {}) {
|
||||||
|
|||||||
Reference in New Issue
Block a user