Typescript 在嵌套函数中获取结果

Typescript 在嵌套函数中获取结果,typescript,imodeljs,Typescript,Imodeljs,请告诉我,如何从函数go()获得结果 获取错误应为1个参数,但获取了0 export const Block: React.FC<iModel> = () => { const go = (imodel: IModelConnection) => { const executeQuery = async (query: string) => { const rows = [] for aw

请告诉我,如何从函数go()获得结果 获取错误应为1个参数,但获取了0

export const Block: React.FC<iModel> = () => {

    const go = (imodel: IModelConnection) => {


        const executeQuery = async (query: string) => {
            const rows = []
            for await (const row of imodel.query(query)) rows.push(row)
            return rows

        }

        const getAllCamerasData = async (): Promise<CompositionItemQueryRow[]> => {
            const query = "select ca.ecinstanceid as id, ca.link as cameralink, pho.origin as coordinates from DgnCustomItemTypes_Camera. CameraElementAspect ca join BisCore. ElementOwnsMultiAspects ema on ca.ecinstanceid=ema.targetecinstanceid join generic.physicalobject pho on ema.sourceecinstanceid=pho.ecinstanceid"
            const rows = await executeQuery(query)
            // console.log(rows)
            return rows as CompositionItemQueryRow[]
        }
        return getAllCamerasData()
    }
let camsDat= go()
导出常量块:React.FC=()=>{
const go=(imodel:IModelConnection)=>{
const executeQuery=async(查询:字符串)=>{
常量行=[]
用于wait(imodel.query(query)的const行)rows.push(row)
返回行
}
const getAllCamerasData=async():Promise=>{
const query=“选择ca.ecinstanceid作为id,ca.link作为cameralink,pho.origin作为DgnCustomItemTypes\u Camera.CameraElementAspect ca join BisCore.ElementOwnsMultiAspects ema on ca.ecinstanceid=ema.TargetInstanceId join generic.physicalobject pho on ema.sourceecinstanceid=pho.ecinstanceid”
常量行=等待执行(查询)
//console.log(行)
以CompositionItemQueryRow[]的形式返回行
}
返回getAllCamerasData()
}
让camsDat=go()
我应该提出什么论点? 如果我通过
让camsDat=go(imodel)
您是否省略了代码中的一些重要部分

  • 您将
    go
    函数定义为接受一个参数,但传递了零;这是对
    预期1个参数的错误的解释

  • 您定义的唯一名为
    imodel
    的变量是
    go
    函数的参数,当您分配给
    camsDat
    时,该变量不可访问;这解释了
    找不到名称“imodel”的错误