Сборка Npm / Webpack с Visual Studio - сохранение файла cshtml в кодировке ANSI, даже если UTF-8 - PullRequest
0 голосов
/ 29 января 2019

Я переключаюсь на использование npm и Webpack (с Asp.Net MVC 5 / C #) для объединения файлов javascript в Visual Studio 2017 (ранее я просто ссылался на сценарии js в файлах .cshtml).Моя ОС - Windows 10.

У меня работает базовая сборка Webpack, но я сталкиваюсь с проблемой кодирования с созданными Webpack представлениями.

Например, фунт "£"На моем веб-сайте появляется символ «£.

». Я думаю, что это связано с проблемой кодирования.

Существующие представления в моем проекте VS (это файлы .cshtml., которые я создал в VS IDE), закодированы с помощью UTF-8 и имеют спецификацию.

Я новичок в Webpack и npm, поэтому, возможно, где-то пропустил базовую конфигурацию, но я не понимаю, почемуHtmlWebpackPlugin, который принимает файл шаблона .cshtml, настаивает на сохранении выходного файла как файла в кодировке ANSI (это шаблон представления с добавленным в него недавно созданным пакетом javascript).

Я проверил кодировкусгенерированные представления с помощью блокнота.

Я запускаю npm в строке cmd, а также пытался запустить его из VS на всякий случай, если это повлияло на генерацию файла.

Любой help будет принята с благодарностью:)


Дальнейшие детали

В VS, если я нажимаю Файл >> Сохранить как в сгенерированном файле, он отображается как UTF8 без спецификации, но если яоткрыть Блокнот, перейдите в Файл >> Открыть, он отображается в кодировке Ansi.

На этом этапе в VS IDE и в Блокноте знак £ отображается правильно, проблема возникает, когда веб-сайт работает, он по-прежнемупоказывает искаженные символы ... Â £


Переключая настройки в VS под Сервис >> Параметры >> Текстовый редактор >> Автоопределение кодировки UTF-8 без подписи - когда у меня есть этопроверено, это единственный способ заставить VS идентифицировать сгенерированный файл cshtml как utf-8.

Если этот параметр установлен, VS по-прежнему правильно отображает символ в среде IDE, но не может правильно отображаться навеб-страница при запуске веб-сайта на моем компьютере разработчика.


Если я вручную открою недавно созданный файл cshtml и перейду в Файл >> Сохранить как >> Сохранить с кодировкой.Затем, если я выберу кодировку utf-8 с спецификацией, веб-сайт правильно отобразит мои символы.

Поэтому я полагаю, что мой вопрос заключается в том, как избежать необходимости открывать и сохранять файл вручную вправильная кодировка после каждой сборки веб-пакета?

...