我正在使用JavaScript和TypeScript制作一个单页Web应用程序。我也在使用JavaScript(self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(handleDone))
)的模块系统。
我有一个名为type="module"
的类,它接收一个对象并创建一个Form
。我有一个模块,其中包含注册表格的所有数据。在具有选项字段的输入中只有一个选择。我将那些选项分配给包含国家名称的数组。我正在使用API来获取国家/地区的名称。但是我被困住了。
下面是我的文件Form
RegisterFormDialog.ts
另一个文件具有API功能。它的名字是const RegisterFormData: IForm = {
//... Some other props
inputs: [
//..Some other objects.
{
name: "country",
type: "select",
label: "Country",
options: countries.map(x => x.name) // Here I want result of the api
}
]
};
export const RegisterForm = new Form(RegisterFormData);
export const RegisterFormDialog = new Dialog({
child: RegisterForm.element,
title: "Register",
dismissable: true,
onClose: () => 5,
parentElement: qs("#main") as HTMLElement
});
GetCountries.ts
现在如何将API数据的返回值分配给对象中的options属性。
答案 0 :(得分:0)
任何声明为async
的函数都应为awaited
(或使用.then()
)来使用其解析值。
因此,您也只需await
getCountries
函数。
options: (await getCountries).map(x => x.name)