#javascript #reactjs #typescript #javascript-intellisense
Вопрос:
Я заметил, что, когда обещание используется внутри async
метода, на самом деле существует множество свойств, которые должны быть в IntelliSense.
Возьмем, к примеру, этот простой код (я использую REACT и нахожусь внутри компонента Hook, просто для того, чтобы дать вам контекст).
const notAsyncMethod = () =gt; { let a : Promiselt;stringgt; = new Promise(null); } const asyncMethod = async () =gt; { let a : Promiselt;stringgt; = new Promise(null); }
Теперь, в первом случае, это предложения IntelliSense:
Именно этого я и ожидал.
Тогда, во втором случае, это то, что предлагает мне IntelliSense:
Почему это происходит? Это нормально, или может быть какая-то проблема с моим кодом? И, если это так, как это должно работать.. Почему это происходит и откуда берутся эти свойства?
Комментарии:
1. Похоже, Intellisense предполагает, что обещания выполняются
await
внутри асинхронной функции. Его предложения, похоже, указывают на то, что он думает, что вашPromiselt;stringgt;
-это просто строка.2. Есть идеи, почему? Иначе это предположение неверно, я прав? Потому что, если это так, я мог бы сообщить об этой проблеме.
3. Мне кажется, это какой-то жук.