Я не знаю ваш контекст, поэтому я предполагаю две вещи:
Вы определили тип XLSX в другом месте, но переменная параметра XLSX скрывает внешнюю переменную. Чтобы избежать затенения, просто используйте другое имя для переменной параметра (например, добавьте подчеркивание):
import('xlsx').then(_XLSX => {
const wb: XLSX.WorkBook = _XLSX.read(bstr, { type: 'binary' });
})
Вы думаете, что XLSX.WorkBook
- это тип, но это не так! XLSX - это библиотека javascript, и у javascript нет понятия типа. Также при использовании TypeScript он передается в javascript, и любая информация о типе теряется. Для этой проблемы нет решения, но, вероятно, вам придется импортировать тип из другого места, например, DefinetelyTyped. Просто импортируйте тип в ваш компонент, и вы сможете его использовать.
Мог это быть связанным с вопросом: Почему делает мой сбой приложения.NET, когда выполнено от сетевого диска?
То, что Ваше приложение .NET имеет другие права на сетевом ресурсе, чем на Вашем локальном диске. Обновление к 3,5 SP1 будет обычно удалять эту проблему. Иначе проверьте политики на удаленный код для .NET.
Также Вы могли попробовать другой не приложение .NET (procmon, например), который потребовал, чтобы повышение поместило его в тот же dir и видело то, что происходит.
По-видимому, это не что-то с .NET, но с контролем учётных записей.
Я воспроизвел поведение путем размещения procmon от systinternals на сетевом ресурсе и видел то же различие.
Возможно, это имеет что-то, чтобы сделать это при переключении на поднятую сессию, другой пользователь используется. Сетевое отображение сделано на обычном пользователе, таким образом, на поднятой сессии применение не могло быть найдено, и для этого не возможно отобразить значок?
Вы могли попытаться сделать следующее, чтобы вынудить соединение быть допустимым на на поднятой сессии:
\\your-network-location\share /user:<username> <password>
\\your-network-location\share\procmon.exe
(чтобы быть на безопасной стороне избегают сетевого диска), и посмотрите, улучшается ли подсказка контроля учётных записей?