如何使用typescript在Nativescript vue中传递对象而不是字符串? 我想实现PromptDialog,如中所示
但Vetur给出了以下类型脚本错误如何使用typescript在Nativescript vue中传递对象而不是字符串? 我想实现PromptDialog,如中所示,typescript,vue.js,nativescript,nativescript-vue,Typescript,Vue.js,Nativescript,Nativescript Vue,但Vetur给出了以下类型脚本错误 Argument of type '{ title: string; message: string; okButtonText: string; cancelButtonText: string; defaultText: string; inputType: string; }' is not assignable to parameter of type 'string'. 这只是中的示例代码,但typescript自适应 基本用途 维图尔错误: Pr
Argument of type '{ title: string; message: string; okButtonText: string; cancelButtonText: string; defaultText: string; inputType: string; }' is not assignable to parameter of type 'string'.
这只是中的示例代码,但typescript自适应
基本用途
维图尔错误:
Property 'then' does not exist on type 'string'.
这是对文件的一次疏漏。没有调用提示符的API。它应该是对话框。提示。 正确的例子
<script lang="ts">
import * as dialogs from "tns-core-modules/ui/dialogs";
export default {
methods: {
onButtonTap() {
console.log("Button was pressed");
dialogs.prompt({
title: "Email Prompt",
message: "Provide your email address:",
okButtonText: "OK",
cancelButtonText: "Cancel",
defaultText: "name@domain.com",
inputType: dialogs.inputType.email
}).then(result => {
console.log(`Dialog result: ${result.result},
text: ${result.text}`);
});
}
},
data() {
return {};
}
};
</script>
从“tns核心模块/ui/对话框”导入*作为对话框;
导出默认值{
方法:{
onButtonTap(){
控制台日志(“按钮被按下”);
对话框.prompt({
标题:“电子邮件提示”,
信息:“提供您的电子邮件地址:”,
OK按钮文字:“OK”,
cancelButtonText:“取消”,
默认文本:“name@domain.com",
inputType:dialogs.inputType.email
})。然后(结果=>{
log(`Dialog result:${result.result},
text:${result.text}`);
});
}
},
数据(){
返回{};
}
};
提示符
接受字符串
作为参数,如果我们讨论这个:PromptDialog,其含义是API具有不正确的类型声明
Property 'then' does not exist on type 'string'.
<script lang="ts">
import * as dialogs from "tns-core-modules/ui/dialogs";
export default {
methods: {
onButtonTap() {
console.log("Button was pressed");
dialogs.prompt({
title: "Email Prompt",
message: "Provide your email address:",
okButtonText: "OK",
cancelButtonText: "Cancel",
defaultText: "name@domain.com",
inputType: dialogs.inputType.email
}).then(result => {
console.log(`Dialog result: ${result.result},
text: ${result.text}`);
});
}
},
data() {
return {};
}
};
</script>