Explorar el Código

🐛 fix(order): 修复活动名称显示乱码问题

- 添加URL解码逻辑处理活动名称,解决中文乱码问题
- 在订单描述和页面标题中使用解码后的活动名称
yourname hace 3 meses
padre
commit
4d662d8833
Se han modificado 1 ficheros con 6 adiciones y 3 borrados
  1. 6 3
      mini/src/pages/order/index.tsx

+ 6 - 3
mini/src/pages/order/index.tsx

@@ -1,5 +1,5 @@
 import { View, Text, ScrollView } from '@tarojs/components'
-import Taro, { useRouter, navigateTo } from '@tarojs/taro'
+import Taro, { useRouter, navigateTo, showToast } from '@tarojs/taro'
 import { useState, useEffect } from 'react'
 import { useQuery, useMutation } from '@tanstack/react-query'
 import { orderClient, paymentClient, routeClient, passengerClient } from '@/api'
@@ -19,6 +19,9 @@ export default function OrderPage() {
   const router = useRouter()
   const { routeId, activityName, type } = router.params
 
+  // 解码URL编码的活动名称
+  const decodedActivityName = activityName ? decodeURIComponent(activityName) : ''
+
   const [passengers, setPassengers] = useState<Passenger[]>([])
   const [phoneNumber, setPhoneNumber] = useState('')
   const [hasPhoneNumber, setHasPhoneNumber] = useState(false)
@@ -231,7 +234,7 @@ export default function OrderPage() {
       await createPaymentMutation.mutateAsync({
         orderId: order.id,
         totalAmount: totalPrice,
-        description: `${activityName || '出行'}订单`
+        description: `${decodedActivityName || '出行'}订单`
       })
 
       // 调用微信支付
@@ -271,7 +274,7 @@ export default function OrderPage() {
       <ScrollView className="flex-1 pb-24">
         {/* 活动信息 */}
         <View className="bg-gradient-to-r from-primary to-primary-dark px-4 py-8 text-white shadow-lg">
-          <Text className="text-2xl font-bold text-center tracking-wide">{activityName || '活动'}</Text>
+          <Text className="text-2xl font-bold text-center tracking-wide">{decodedActivityName || '活动'}</Text>
         </View>
 
         {/* 班次信息 */}