Как позволить VSCode / Typescript делать автозаполнение на импортируемых классах? - PullRequest
1 голос
/ 16 апреля 2020

Допустим, у меня есть файл, class.ts

//I tried implementing interface, but it won't help, with or without the interface
interface FooInterface {
    bar: Function
}

class Foo implements FooInterface {

    bar() {
        console.log('Hello world!');
    }

}

export = new Foo();

Из другого моего файла, index.js, я ожидаю, что VS Code сможет прочитать содержимое класса Foo и выполнить автозаполнение , но это не так.

const Foo = require('./class');

///Expecting the .bar() suggestion after typing Foo., but it didn't happen
Foo.bar();

Я что-то упустил? Что я должен сделать, чтобы VS Code мог распознавать, какие методы / свойства доступны в классе? Многие сторонние библиотеки могут это сделать.

1 Ответ

1 голос
/ 16 апреля 2020

Этот шаблон выглядит немного странно для меня, поэтому я создал песочницу для вас,

Надеюсь, это поможет

Вот песочница: https://codesandbox.io/s/vigorous-fog-hngl5?file= / src / index . js: 0-72

Я также вставлю сюда код на тот случай, если вы хотите увидеть различия

interface FooInterface {
  bar: () => void
}

export default class Foo implements FooInterface {

  bar() {
      console.log('Hello world!');
  }

}

и вот как вы его импортируете:

import Foo from './class';

const FooInstance = new Foo();

Это результат: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...