如何使用 angular 中的另一个变量分配一个结构数据类型变量值?

How to assign one strict datatype variable value using another variable in angular?

我是一名 Angular 开发人员,正在从事一个项目,在该项目中我使用了严格的数据类型并使用我的自定义数据类型定义了变量,如下所示:

Code: 1 | 2 | 3 | 4 | 5 = 1;

如果我们直接给这个 code 变量赋常量值,上面的变量声明 将工作得很好 。像这样:

Code = 3;

但是如果我尝试使用这样的变量分配它,这个 将给出一个错误 :

let num = this.getNumberBewteen1_5();
Code = num;

和函数getNumberBewteen1_5()是return1到5之间的一个数的函数;

有没有办法在不删除 angular 中的严格 DataType 的情况下修复它?

问题是方法返回的类型应该与变量类型相同。
您尝试将数字分配给 1 | 2 | 3 | 4 | 5 是不同的类型。

工作示例:

import { Component } from '@angular/core';

type YourType = 1 | 2 | 3;

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  a: YourType;

  constructor() {
    let b = this.yourMethod();
    this.a = b;
  }

  yourMethod(): YourType { // returned type is YourType (not number)
    return 1; // or 2 | 3
  }
}