gpt4 book ai didi

typescript - 请求帮助以了解以及如何启动类的 typescript 数组

转载 作者:行者123 更新时间:2023-12-03 09:45:52 26 4
gpt4 key购买 nike

我将其分解为 MapComponent 和 GeoPoint 类这两个项目。
我在这里缺少什么?

map 组件

  • 这些中的任何一个是创建我创建的类的数组的正确方法,因此它不是未定义的吗?
  • 如果不是,正确的方法是什么?
  •     // Initiate
    const response: Array<LatLngExpression> = []; // Seems to work
    const response: [LatLngExpression] = []; // Msg: Type any[] is not assignable to type [any]
    // Add a value to the array
    response.push(geoPoint.getLatLng());

    GeoPoint
    export clas GeoPoint {
    private _id: string;
    private _value: LatLngExpression; // This is a leaflet.LatLngExpression
    private _selected: boolean = false;

    constructor (id: string, latLng:LatLngExpression, selected?:boolean) {
    this._id = id;
    this._value = latLng;
    if(selected){
    this._selected = selected;
    }
    }

    set()... // you get the idea
    get()... // you get the idea
    }

    最佳答案

    您的“似乎有效”是正确的:

    const response: Array<LatLngExpression> = [];

    你也可以这样写:
    const response: LatLngExpression[] = [];
    LatLngExpression[]response 的类型.

    这在 Basic Types > Array section 中的手册中有介绍。 .

    在许多情况下,您也可以完全不使用类型并允许 TypeScript 推断它。但是如果你从一个空数组开始,那实际上比只提供类型注释更尴尬,因为你必须提供类型断言。所以这可能不是你想要的,只是为了完整性:
    // I probably wouldn't do it this way
    const response = [] as LatLngExpression[];

    关于typescript - 请求帮助以了解以及如何启动类的 typescript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59990353/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com