问题描述
Future<String> signIn(String email,String password) async {
UserCredential result = await _firebaseAuth.signInWithEmailAndPassword(
email: email,password: password);
writeDB();
User user = result.user;
return user.uid;
}
默认的推断类型是 const myDict = {
1: "one",2: "two"
}
。
我想派生一种只接受分配给 Record<1 | 2,string>
属性的确切字符串文字的类型:
myDict
我怎样才能派生出这样的类型?输入原始字典(因此 type T = {
1: typeof "one",2: typeof "two"
}
等于我想要的类型)对我来说效果最好。
我知道我可以通过 typeof myDict
关键字来断言类型:
as
但是这种解决方法非常不切实际,并且容易在大型词典中出错。什么是更好的方法?
解决方法
您可以使用 const assertion 完成此操作。
const myDict = {
1: "one",2: "two",} as const