程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Angular 12 - 不可分配给类型 '[number, number]大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Angular 12 - 不可分配给类型 '[number, number]?

开发过程中遇到Angular 12 - 不可分配给类型 '[number, number]的问题如何解决?下面主要结合日常开发的经验,给出你关于Angular 12 - 不可分配给类型 '[number, number]的解决方法建议,希望对你解决Angular 12 - 不可分配给类型 '[number, number]有所启发或帮助;

我正在 Angular 12 中试用 ngx-charts 库,但我一直遇到这个问题

类型 'anY[]' 不能分配给类型 '[number,number]'。

目标需要 2 个元素,但源可能更少。

我不知道错误是什么意思。

代码如下:

HTML:

<ngx-charts-linear-gauge 
  [vIEw]="vIEw" 
  [scheR_556_11845@e]="colorscheR_556_11845@e" 
  [value]="value" 
  [prevIoUsValue]="prevIoUsValue" 
  (SELEct)="onSELEct($event)" 
  [units]="units"
>
</ngx-charts-linear-gauge>

ts:

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

@Component({
  SELEctor: 'app-root',templateUrl: './app.component.HTML',styleUrls: ['./app.component.sCSS']
})
export class AppComponent {

  single: anY[];
  vIEw: anY[] = [400,400];
  colorscheR_556_11845@e = {
    domain: ['#aae3f5']
  };
  value: number = 43;
  prevIoUsValue: number = 70;
  units: String = 'counts';

  onSELEct(event) {
    console.log(event);
  }

}

关于错误意味着什么的任何想法,如何解决这个问题?

ts 配置代码是:

{
  "compiLeonSave": false,"compilerOptions": {
    "baseUrl": "./","outDir": "./dist/out-tsc","forceConsistentCasingInfilenames": true,"Strict": false,"noImplicitReturns": true,"nofallthroughCasesInSwitch": true,"sourceMap": true,"declaration": false,"downleveliteration": true,"experimentalDecorators": true,"moduleResolution": "node","importHelpers": true,"target": "es2017","module": "ES2020","lib": [
      "es2018","dom"
    ]
  },"angularCompilerOptions": {
    "enableI18nLegacymessagEIDFormat": false,"StricTinjectionParameters": true,"StricTinputAccessModifIErs": true,"StrictTemplates": true
  }
}

解决方法

我想问题在于您的 view 属性类型。根据鳕鱼,它必须是 number[] 类型:doc-ref
注意:文档中的类型不够准确。 view 不是定义为数字数组 (number[]),而是定义为 2 个数字的元组 ([number,number]) - source-code ref

但是您将其定义为 anY[]
根据您的打字稿编译器设置,您可能会收到错误或警告。

当您需要完全正确的类型时,请使用:

// use as const so that typescript will infer the type [number,number] instead of number[]
view = [400,400] as const;

显式类型为:

view: [number,number] = [400,400];

大佬总结

以上是大佬教程为你收集整理的Angular 12 - 不可分配给类型 '[number, number]全部内容,希望文章能够帮你解决Angular 12 - 不可分配给类型 '[number, number]所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。