URL 查询参数返回 [object%20Object]

问题描述 投票:0回答:0

I used URLSearchParams() to extract data from my query parameters

我的查询参数看起来像这样/?dt=Sample&ut=Sample%20Data

ContractView.tsx
import React, { ReactElement, useEffect, useState } from 'react'
import Viewer from './Viewer/Viewer'
import getContract from '../../services/getContract'

const ContractView = (): ReactElement => {
  const [contractFile, setContractFile] = useState<string>('')

  let dt: any
  let ut: any

  if (typeof window !== `undefined`) {
    const myKeys = window.location.search
    const urlParams = new URLSearchParams(myKeys)
    dt = urlParams.get('dt')
    ut = urlParams.get('ut')
  }

  useEffect(() => {
    const fetchData = async () => {
      const result = await getContract({
        document: dt,
        usage: ut,
      })
      if (result) {
        setContractFile(`${process.env.GATSBY_API_URL}/${result}`)
      }
    }
    fetchData()
  }, [])

  return <Viewer pdfFile={contractFile} />
}

export default ContractView

getContract.ts 只是一个从 API 端点获取数据的导入函数

Viewer.tsx 只是一个带有 react-pdf 的组件,用于渲染从 getContract 获取的 PDF 文档资源

我总是得到这个错误

 

I used URLSearchParams() to extract data from my query parameters
javascript reactjs gatsby urlsearchparams
© www.soinside.com 2019 - 2024. All rights reserved.