From a8706903fc6b3ffe8ca8eb843954f4b5cee0dc23 Mon Sep 17 00:00:00 2001
From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com>
Date: Thu, 27 Mar 2025 17:45:44 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=B0=E9=9C=80=E6=B1=82?=
=?UTF-8?q?=E4=BB=A5=E5=8F=8A=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/pages.json | 6 +
src/pages/error/index.vue | 51 ++++++++
src/pages/index/index.vue | 240 ++++--------------------------------
src/pages/opinion/index.vue | 165 +++++++++++++++++++------
src/utils/http.js | 4 +-
5 files changed, 205 insertions(+), 261 deletions(-)
create mode 100644 src/pages/error/index.vue
diff --git a/src/pages.json b/src/pages.json
index ad7f5c3..2548717 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -22,6 +22,12 @@
"style": {
"navigationBarTitleText": "意见收集"
}
+ },
+ {
+ "path": "pages/error/index",
+ "style": {
+ "navigationBarTitleText": "意见收集"
+ }
}
],
"globalStyle": {
diff --git a/src/pages/error/index.vue b/src/pages/error/index.vue
new file mode 100644
index 0000000..2b1b6a7
--- /dev/null
+++ b/src/pages/error/index.vue
@@ -0,0 +1,51 @@
+
+
+
+
+ 此二维码已失效
+
+
+
+
+
+
+
diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue
index 119d47f..4c778da 100644
--- a/src/pages/index/index.vue
+++ b/src/pages/index/index.vue
@@ -1,244 +1,48 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ 我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约我用十年青春,赴你最后之约
+
-
-
-
-
-
-
-
-
-
- 提交成功
- 感谢您宝贵的意见
-
-
-
-
-
-
-
-
+
+
+
diff --git a/src/pages/opinion/index.vue b/src/pages/opinion/index.vue
index badf69c..c4edf4a 100644
--- a/src/pages/opinion/index.vue
+++ b/src/pages/opinion/index.vue
@@ -10,44 +10,64 @@
labelWidth="auto"
class="opinion-form"
>
-
+
-
+
-
+
+
+
+
+
+
-
+
+
+
@@ -60,17 +80,17 @@
-
+ /> -->
@@ -88,8 +108,6 @@
import { submitOptionsApi } from '@/services/options.js'
import { ref } from 'vue'
-console.log('submitOptionsApi', submitOptionsApi)
-
// 表单数据源
const opinionModel = ref({
userName: '',
@@ -97,30 +115,43 @@ const opinionModel = ref({
unit: '',
options: '',
})
-const opinionRules = ref({
- userName: {
- type: 'string',
- required: true,
- message: '请填写姓名',
- trigger: ['blur', 'change'],
- },
- userPhone: [
- {
- type: 'string',
- required: true,
- message: '请填写电话',
- trigger: ['blur', 'change'],
- },
- {
- pattern: /^1[3-9]\d{9}$/,
- // 正则检验前先将值转为字符串
- transform(value) {
- return String(value)
- },
- message: '请填写正确的手机号码',
- },
- ],
+const fileList = ref([])
+
+const opinionRules = ref({
+ // userName: [
+ // {
+ // type: 'string',
+ // required: true,
+ // message: '请填写姓名',
+ // trigger: ['blur', 'change'],
+ // },
+ // {
+ // pattern: /^[\u4e00-\u9fa5]{2,6}$/,
+ // // 正则检验前先将值转为字符串
+ // transform(value) {
+ // return String(value)
+ // },
+ // message: '请填写正确的姓名',
+ // },
+ // ],
+ // userPhone: [
+ // {
+ // type: 'string',
+ // required: true,
+ // message: '请填写电话',
+ // trigger: ['blur', 'change'],
+ // },
+
+ // {
+ // pattern: /^1[3-9]\d{9}$/,
+ // // 正则检验前先将值转为字符串
+ // transform(value) {
+ // return String(value)
+ // },
+ // message: '请填写正确的手机号码',
+ // },
+ // ],
options: [
{
type: 'string',
@@ -128,6 +159,10 @@ const opinionRules = ref({
message: '请填写意见',
trigger: ['blur', 'change'],
},
+ {
+ max: 500,
+ message: '字数不能超过500',
+ },
],
})
@@ -179,6 +214,54 @@ const onExit = () => {
const onConfirm = () => {
uni.redirectTo({ url: '/pages/index/index' })
}
+
+// 删除图片
+const deletePic = (event) => {
+ fileList.value.splice(event.index, 1)
+}
+
+// 新增图片
+const afterRead = async (event) => {
+ console.log('event', event)
+ let lists = [].concat(event.file)
+ let fileListLen = fileList.value.length
+ lists.map((item) => {
+ fileList.value.push({
+ ...item,
+ status: 'uploading',
+ message: '上传中',
+ })
+ })
+ for (let i = 0; i < lists.length; i++) {
+ const result = await uploadFilePromise(lists[i].url)
+ let item = fileList.value[fileListLen]
+ fileList.value.splice(fileListLen, 1, {
+ ...item,
+ status: 'success',
+ message: '',
+ url: result,
+ })
+ fileListLen++
+ }
+}
+
+const uploadFilePromise = (url) => {
+ return new Promise((resolve, reject) => {
+ let a = uni.uploadFile({
+ url: 'http://192.168.2.21:7001/upload',
+ filePath: url,
+ name: 'file',
+ formData: {
+ user: 'test',
+ },
+ success: (res) => {
+ setTimeout(() => {
+ resolve(res.data.data)
+ }, 1000)
+ },
+ })
+ })
+}