Ошибка дублирования идентификатора при создании класса в Typescript

#typescript #data-structures

Вопрос:

Я пытаюсь создать связанный список в Typescript, и я создал интерфейс индекса и класс узлов, чтобы запустить его

 interface INode<T> {
  data: T;
  next: INode<T> | null;
}

class Node<T> implements INode<T> {
  public data: T;
  public next: INode<T> | null;
  
  constructor(data: T) {
    this.data = data
    this.next = null
  }
}
 

Проблема в том, что я получаю ошибку TS, которая продолжает говорить:

 Duplicate identifier "Node"
 

И, основываясь на коде, который я показал выше, дублирующего идентификатора нет. Как я могу исправить эту ошибку?

Ответ №1:

Ваш класс Node конфликтует с абстрактным интерфейсом, предоставляемым интерфейсом dom Node : https://developer.mozilla.org/en-US/docs/Web/API/Node

Либо вам нужно назвать свой класс как-то иначе, либо удалить dom его из библиотеки компилятора (например tsconfig.json ), если это то, что вам не нужно.