import React from 'react'; import Taro from '@tarojs/taro'; import { View } from '@tarojs/components'; import { Button, Notify, Field, Cell, CellGroup, Uploader } from '@antmjs/vantui'; import Page from '@/layouts/index'; import LocType from '@/components/locType'; import IssueType from '@/components/issueType'; import Map from '@/components/map'; import ImageUploader from '@/components/Uploader/ImageUploader'; import getAuthorize from '@/utils/authorize'; import { ROLE_INSPECTOR } from '@/utils/user'; import mapIcon from '@/assets/icons/marker.png'; export default (props) => { const [formData, setFormData] = React.useState({ typeId: undefined, typeName: undefined, locId: undefined, locName: undefined, location: undefined, addr: undefined, content: undefined, images: [], }); const [showLocType, setShowLocType] = React.useState(false); const [showIssueType, setShowIssueType] = React.useState(false); const onLocTypeChange = (_, it) => { setFormData({ ...formData, locId: it.typeId, locName: it.name, }); setShowLocType(false); } const onIssueTypeChange = (_, it) => { setFormData({ ...formData, typeId: it.typeId, typeName: it.name, }); setShowIssueType(false); } const onFieldChange = (field, value) => { setFormData({ ...formData, [field]: value, }) } React.useMemo(() => { getAuthorize('scope.userLocation').then(() => { Taro.getLocation({ success(res) { onFieldChange('location', `${res.longitude},${res.latitude}`); }, fail() { Notify.show({ message: '获取位置失败, 请退出重试', type: 'warning', }) } }); }).catch((err) => { Notify.show({ message: '未能获取位置, 程序部分功能将不能正常使用', type: 'warning', }) }); }, []); return ( setShowLocType(false)} onChange={onLocTypeChange} /> setShowIssueType(false)} onChange={onIssueTypeChange} /> onFieldChange('addr', e.detail)} /> setShowLocType(true)} /> onFieldChange('content', e.detail)} /> setShowIssueType(true)} /> onFieldChange('images',e)} /> } /> ) }