Подтвердить что ты не робот

Почему Chrome не обновляет исходные файлы Typescript при изменении?

Я работаю над проектом TypeScript (0.9.1), используя Visual Studio 2012 с последними веб-Essentials в качестве среды IDE, и отладю с помощью инструментов Chrome Developer.

Недавно, и, скорее всего, после обновления Chrome (версия 29.0.1547.66 m), файлы TypeScript не обновляются после редактирования, а с другой стороны, соответствующие скомпилированные js файлы обновляются, но похоже, что функциональность по-прежнему зависит от не обновленной версии источников.

Решения пробовали и не удалось:

  • Восстановите полное решение.
  • Жесткое обновление (Shift + F5) локального узла хоста на хроме
  • Удаление файлов исходной карты и их генерация снова.

После некоторых испытаний похоже, что даже запрос на загрузку исходных файлов ts дает не обновленную версию (http://localhost:1198/xxx.ts e.g)

Кажется, что проблема частично устраняется после полного перезапуска (если это имеет значение для Windows 8), исходные файлы обновляются в хроме, но как только я снова его изменю, появляется такая же проблема.

Другим решением было использование инкогнито, так как кажется, что это проблема кэширования.

Мой вопрос:

Является ли кэширование TypeScript файлов так, что это связано с проблемой в конфигурациях проекта (даже если он работал раньше), или это ошибка в новой версии Chrome?

4b9b3361

Ответ 1

Если вы работаете с IIS, у нас отключен кеш вручную в нашем файле web.config:

<system.webServer>

    <httpProtocol>

      <!--TODO: Remove this block for production (//TODO: Remove this block for production) -->
      <customHeaders>
        <!--DISABLE CACHE-->
        <add name="Cache-Control" value="no-cache, no-store, must-revalidate" />
        <add name="Pragma" value="no-cache" />
        <add name="Expires" value="0" />
      </customHeaders>

    </httpProtocol>
</system.webServer>     

Ответ 2

Я решил это, удалив кешированные файлы вручную. Это можно сделать с помощью настроек Chrome:

  • Нажмите "Настроить и управлять Google Chrome" - значок меню гамбургера в правом верхнем углу окна браузера.
  • Выберите Настройки в нижней части меню.
  • Прокрутите вниз и нажмите ссылку Показать дополнительные настройки....
  • Нажмите кнопку Очистить данные броска....
  • Проверьте кешированные изображения и файлы. Остальные флажки можно оставить непроверенными.
  • Нажмите кнопку Очистить данные броузера.

Флажок "Отключить кеш" на вкладке "Сеть" не работал у меня, а также Ctrl + F5.

Ответ 3

У меня такая же проблема. Я решил эту проблему, когда инструменты chroome debug отключили кеш.

Моя вторая проблема, я написал много классов в один и тот же файл. i сращивает каждый класс, чтобы разделить файл.

enter image description here

Ответ 4

Я не знаю, почему он не работает нормально. Но даже когда вы отключите кеширование, он все равно не работает. Что работает как ручная работа. Если инструменты chrome dev открыты, вы можете щелкнуть правой кнопкой мыши значок обновления и выполнить жесткую перезагрузку (я делаю "Empty Cache and Hard Reload" ), и он работает.

Ответ 5

Я решил это, как Ян Агаард.

Настроить и управлять Google Chrome > Настройки > Показать расширенные настройки... > Очистить данные броузера... > Проверить "Кэшированные изображения и файлы" > Очистить данные броска.

Ответ 6

Если у кого-то есть такая же проблема на Visual Studio 2015 после установки ASP.Net 5 RC1. Проверьте, отображается ли на панели мониторинга Browser Link "Нет текущих подключений" при запуске или отладке проекта DNX ремонт обновления устранит проблему:

  • Закрыть Visual Studio
  • Открыть панель управления > Программы и функции
  • Щелкните правой кнопкой мыши на "Microsoft ASP.NET 5 RC1 Update 1"
  • Нажмите "изменить"
  • В установщике обновления 1 для ASP.NET 5 RC1 нажмите "Восстановить"