簡體   English   中英

“如何修復‘錯誤:(5, 12) TS2314:通用類型‘數組<T> &#39;在 Angular 中需要 1 個類型參數&#39;

[英]"How to fix 'Error:(5, 12) TS2314: Generic type 'Array<T>' requires 1 type argument(s) ' in Angular"

打字稿文件中的 JSON 數據有錯誤。

我正在嘗試在 Angular 中創建一個執行 git-search 操作的 API。 最初我有 JSON 數據,但后來我將所有數據值更改為數據類型,即 2323 到數字“ https://www.google.com ”到字符串等等,但問題是TS2314錯誤來了。

我已將雙引號固定為單引號,但這很簡單。 我也用過 <>;


export interface GitSearch {

  'total_count': number;
  'incomplete_results': boolean;
  'items': Array<
    {
      'id': number,
      'node_id': string,
      'name': string,
      'full_name': string,
      'private': boolean,
      'owner': {
        'login': string,
        'id': number,
        'node_id': string,
        'avatar_url': string,
        'gravatar_id': string,
        'url': string,
        'html_url': string,
        'followers_url': string,
        'following_url': string,
        'gists_url': string,
        'starred_url': string,
        'subscriptions_url': string,
        'organizations_url': string,
        'repos_url': string,
        'events_url': string,
        'received_events_url': string,
        'type': string,
        'site_admin': boolean
      },
      'html_url': string,
      'description': string,
      'fork': boolean,
      'url': string,
      'forks_url': string,
      'keys_url': string,
      'collaborators_url': string,
      'teams_url': string,
      'hooks_url': string,
      'issue_events_url': string,
      'events_url': string,
      'assignees_url': string,
      'branches_url': string,
      'tags_url': string,
      'blobs_url': string,
      'git_tags_url': string,
      'git_refs_url': string,
      'trees_url': string,
      'statuses_url': string,
      'languages_url': string,
      'stargazers_url': string,
      'contributors_url': string,
      'subscribers_url': string,
      'subscription_url': string,
      'commits_url': string,
      'git_commits_url': string,
      'comments_url': string,
      'issue_comment_url': string,
      'contents_url': string,
      'compare_url': string,
      'merges_url': string,
      'archive_url': string,
      'downloads_url': string,
      'issues_url': string,
      'pulls_url': string,
      'milestones_url': string,
      'notifications_url': string,
      'labels_url': string,
      'releases_url': string,
      'deployments_url': string,
      'created_at': string,
      'updated_at': string,
      'pushed_at': string,
      'git_url': string,
      'ssh_url': string,
      'clone_url': string,
      'svn_url': string,
      'homepage': string,
      'size': number,
      'stargazers_count': number,
      'watchers_count': number,
      'language': null,
      'has_issues': boolean,
      'has_projects': boolean,
      'has_downloads': boolean,
      'has_wiki': boolean,
      'has_pages': boolean,
      'forks_count': number,
      'mirror_url': null,
      'archived': boolean,
      'disabled': boolean,
      'open_issues_count': number,
      'license': {
        'key': string,
        'name': string,
        'spdx_id': string,
        'url': string,
        'node_id': string
      },
      'forks': number,
      'open_issues': number,
      'watchers': number,
      'default_branch': string,
      'score': number
    },
    {
      'id': number,
      'node_id': string,
      'name': string,
      'full_name': string,
      'private': boolean,
      'owner': {
        'login': string,
        'id': number,
        'node_id': string,
        'avatar_url': string,
        'gravatar_id': string,
        'url': string,
        'html_url': string,
        'followers_url': string,
        'following_url': string,
        'gists_url': string,
        'starred_url': string,
        'subscriptions_url': string,
        'organizations_url': string,
        'repos_url': string,
        'events_url': string,
        'received_events_url': string,
        'type': string,
        'site_admin': boolean
      },
      'html_url': string,
      'description': string,
      'fork': boolean,
      'url': string,
      'forks_url': string,
      'keys_url': string,
      'collaborators_url': string,
      'teams_url': string,
      'hooks_url': string,
      'issue_events_url': string,
      'events_url': string,
      'assignees_url': string,
      'branches_url': string,
      'tags_url': string,
      'blobs_url': string,
      'git_tags_url': string,
      'git_refs_url': string,
      'trees_url': string,
      'statuses_url': string,
      'languages_url': string,
      'stargazers_url': string,
      'contributors_url': string,
      'subscribers_url': string,
      'subscription_url': string,
      'commits_url': string,
      'git_commits_url': string,
      'comments_url': string,
      'issue_comment_url': string,
      'contents_url': string,
      'compare_url': string,
      'merges_url': string,
      'archive_url': string,
      'downloads_url': string,
      'issues_url': string,
      'pulls_url': string,
      'milestones_url': string,
      'notifications_url': string,
      'labels_url': string,
      'releases_url': string,
      'deployments_url': string,
      'created_at': string,
      'updated_at': string,
      'pushed_at': string,
      'git_url': string,
      'ssh_url': string,
      'clone_url': string,
      'svn_url': string,
      'homepage': string,
      'size': number,
      'stargazers_count': number,
      'watchers_count': number,
      'language': string,
      'has_issues': boolean,
      'has_projects': boolean,
      'has_downloads': boolean,
      'has_wiki': boolean,
      'has_pages': boolean,
      'forks_count': number,
      'mirror_url': null,
      'archived': boolean,
      'disabled': boolean,
      'open_issues_count': number,
      'license': {
        'key': string,
        'name': string,
        'spdx_id': string,
        'url': string,
        'node_id': string
      },
      'forks': number,
      'open_issues': number,
      'watchers': number,
      'default_branch': string,
      'score': number
    },
    {
      'id': number,
      'node_id': string,
      'name': string,
      'full_name': string,
      'private': boolean,
      'owner': {
        'login': string,
        'id': number,
        'node_id': string,
        'avatar_url': string,
        'gravatar_id': string,
        'url': string,
        'html_url': string,
        'followers_url': string,
        'following_url': string,
        'gists_url': string,
        'starred_url': string,
        'subscriptions_url': string,
        'organizations_url': string,
        'repos_url': string,
        'events_url': string,
        'received_events_url': string,
        'type': string,
        'site_admin': boolean
      },
      'html_url': string,
      'description': string,
      'fork': boolean,
      'url': string,
      'forks_url': string,
      'keys_url': string,
      'collaborators_url': string,
      'teams_url': string,
      'hooks_url': string,
      'issue_events_url': string,
      'events_url': string,
      'assignees_url': string,
      'branches_url': string,
      'tags_url': string,
      'blobs_url': string,
      'git_tags_url': string,
      'git_refs_url': string,
      'trees_url': string,
      'statuses_url': string,
      'languages_url': string,
      'stargazers_url': string,
      'contributors_url': string,
      'subscribers_url': string,
      'subscription_url': string,
      'commits_url': string,
      'git_commits_url': string,
      'comments_url': string,
      'issue_comment_url': string,
      'contents_url': string,
      'compare_url': string,
      'merges_url': string,
      'archive_url': string,
      'downloads_url': string,
      'issues_url': string,
      'pulls_url': string,
      'milestones_url': string,
      'notifications_url': string,
      'labels_url': string,
      'releases_url': string,
      'deployments_url': string,
      'created_at': string,
      'updated_at': string,
      'pushed_at': string,
      'git_url': string,
      'ssh_url': string,
      'clone_url': string,
      'svn_url': string,
      'homepage': string,
      'size': number,
      'stargazers_count': number,
      'watchers_count': number,
      'language': null,
      'has_issues': boolean,
      'has_projects': boolean,
      'has_downloads': boolean,
      'has_wiki': boolean,
      'has_pages': boolean,
      'forks_count': number,
      'mirror_url': null,
      'archived': boolean,
      'disabled': boolean,
      'open_issues_count': number,
      'license': null,
      'forks': number,
      'open_issues': number,
      'watchers': number,
      'default_branch': string,
      'score': number
    }
 >;
}

我希望上面的輸出沒有錯誤。

我剛剛將您的代碼轉換為在打字稿中使用類和接口的正確方法。

export interface GitSearch {

  total_count: number;
  incomplete_results: boolean;
  items: Array<ItemModel>;
}

export class Licence {    
    key: string;
    name: string;
    spdx_id: string;
    url: string;
    node_id: string;    
}

export class OwnerModel {
    login: string;
    id: number;
    node_id: string;
    avatar_url: string;
    gravatar_id: string;
    url: string;
    html_url: string;
    followers_url: string;
    following_url: string;
    gists_url: string;
    starred_url: string;
    subscriptions_url: string;
    organizations_url: string;
    repos_url: string;
    events_url: string;
    received_events_url: string;
    type: string;
    site_admin: boolean
}

export class ItemModel {

    id: number;
    node_id: string;
    name: string;
    full_name: string
    private: boolean;
    owner: OwnerModel
    html_url: string;
    description: string;
    fork: boolean;
    url: string;
    forks_url: string;
    keys_url: string;
    collaborators_url: string;
    teams_url: string;
    hooks_url: string;
    issue_events_url: string;
    events_url: string;
    assignees_url: string;
    branches_url: string;
    tags_url: string;
    blobs_url: string;
    git_tags_url: string;
    git_refs_url: string;
    trees_url: string;
    statuses_url: string;
    languages_url: string;
    stargazers_url: string;
    contributors_url: string;
    subscribers_url: string;
    subscription_url: string;
    commits_url: string;
    git_commits_url: string;
    comments_url: string;
    issue_comment_url: string;
    contents_url: string;
    compare_url: string;
    merges_url: string;
    archive_url: string;
    downloads_url: string;
    issues_url: string;
    pulls_url: string;
    milestones_url: string;
    notifications_url: string;
    labels_url: string;
    releases_url: string;
    deployments_url: string;
    created_at: string;
    updated_at: string;
    pushed_at: string;
    git_url: string;
    ssh_url: string;
    clone_url: string;
    svn_url: string;
    homepage: string;
    size: number;
    stargazers_count: number;
    watchers_count: number;
    language: null;
    has_issues: boolean;
    has_projects: boolean;
    has_downloads: boolean;
    has_wiki: boolean;
    has_pages: boolean;
    forks_count: number;
    mirror_url: null;
    archived: boolean;
    disabled: boolean;
    open_issues_count: number;
    license: Licence;
    forks: number;
    open_issues: number;
    watchers: number;
    default_branch: string;
    score: number;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM