Реакция intellisense в коде Visual Studio

Я уверен, что мне не хватает чего-то простого, но я просто не могу заставить React.js IntelliSense работать в коде Visual Studio.

Я сделал следующее:

  • npm install typings
  • ext install Typings Installer в коде Visual Studio
  • ext install Typings в коде Visual Studio
  • typings init в корневом каталоге моего "приложения"
  • typings install --ambient react-global в корне моего "приложения"
  • перезапустил код Visual Studio

Это создало папку typings. Мое приложение структурировано в следующей структуре папок:

├───public
│   ├───css
│   └───scripts
|       └───test.js
└───typings
    ├───browser
    │   └───ambient
    │       └───react-global
    └───main
        └───ambient
            └───react-global

Но когда я нахожусь в test.js и набираю React., я не получаю IntelliSense.

Я предполагаю, что мне не хватает чего-то фундаментального?

EDIT: Спасибо за вашу помощь, это действительно больше связано с этим. Я думаю, что у меня есть работа и написано о моих шагах здесь http://mattdufeu.co.uk/setup-intellisense-vscode-react-js/

Ответ 1

Я думаю, вам нужно добавить jsconfig.json в корень вашей рабочей области

https://code.visualstudio.com/docs/languages/javascript#_javascript-projects-jsconfigjson

[Примечание: вы можете даже оставить файл jsconfig.json пустым]

У меня была такая же проблема с angular, это разрешило это для меня.

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

Ответ 2

Теперь, когда наборы (и в этом отношении tsd) больше не рекомендуются. Я обнаружил, что однострочный ответ для моей ситуации состоял в том, чтобы просто включить в команду определения типов из npm

npm я @types/react --save-dev

Компания intellisense сразу подобрала для меня новые определения в коде Visual Studio, но, возможно, кому-то еще вам может понадобиться перезапустить окно VSCode.

Я не уверен, что это уместно, но мое приложение было создано с помощью create-реагировать на приложение с последней версией.

Ответ 3

Если кто-либо еще встретится с этим вопросом в марте или апреле 2016 года, вы также можете проверить эту проблему в github, чтобы узнать, закрыто ли оно:

https://github.com/Microsoft/vscode-react-native/issues/61

По сути, использование импорта модуля import React, { Component } from 'react' в стиле ES6 приводит к тому, что Salsa Intellisense не работает, обходной путь заключается в использовании require:
var React = require('react'); var { Component } = React;

Ответ 4

Если вы добавите пустой файл jsconfig.json в ваш реактивный проект, это приведет к сбою процесса сборки. просто заполните его чем-то вроде

{
  "compilerOptions": {
    "target": "es6"
  }
}