为什么Chrome在更改时不会更新Typescript源文件?

时间:2013-09-06 12:44:57

标签: google-chrome caching visual-studio-2012 typescript google-chrome-devtools

我正在使用Visual Studio 2012和最新的Web Essentials作为IDE开发TypeScript(0.9.1)项目,并使用Chrome Developer工具进行调试。

最近,很可能在Chrome更新后(cur。版本29.0.1547.66 m),我编辑后,typeScript文件不会更新,另一方面,相应的已编译的js文件会更新,但似乎是某种程度上,功能仍然取决于源的非更新版本。

解决方案尝试失败

  • 重建完整的解决方案。
  • 在Chrome上刷新(Shift + F5)本地主机站点
  • 删除源地图文件并再次生成它们。

经过一些试验后,即使是下载ts源文件的请求也会产生非更新版本(http://localhost:1198/xxx.ts例如)

似乎问题在完全重启后会得到部分修复(如果重要的话,Windows 8会更新),源文件会在chrome中更新,但是一旦我再次更改它,就会出现同样的问题。

另一个解决方案是使用隐身,因为它似乎是一个缓存问题。

我的问题

缓存typeScript文件是否是由项目配置中的问题引起的(即使以前工作过),或者这是新版Chrome中的错误?

7 个答案:

答案 0 :(得分:20)

我遇到了同样的问题。我用chreome调试工具解决了这个问题,禁用了缓存检查。

我的第二个问题,我在同一个文件中写了很多课。 我把每个班级分开来分开文件。

enter image description here

答案 1 :(得分:17)

我通过手动删除缓存文件解决了这个问题。这可以通过Chrome的设置完成:

  1. 点击自定义并控制谷歌浏览器 - 浏览器窗口右上角的汉堡菜单图标
  2. 选择菜单底部附近的设置
  3. 向下滚动并点击显示高级设置... 链接。
  4. 点击清除浏览数据... 按钮。
  5. 检查缓存的图像和文件。其他复选框可以不选中。
  6. 点击清除浏览数据按钮。
  7. '禁用缓存'网络标签中的复选框对我没有用,也没有按Ctrl + F5。

答案 2 :(得分:13)

如果您从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>     

答案 3 :(得分:0)

我不知道为什么它不能正常工作。但即使你关闭缓存,它仍然无法正常工作。什么可以作为手动工作。如果Chrome开放工具已打开,那么您可以右键单击刷新图标并进行重新加载(我执行“空缓存和硬重新加载”#39;)并且它可以正常工作。

答案 4 :(得分:0)

我像Jan Aagaard一样解决了这个问题。

自定义和控制Google Chrome&gt;设置&gt;显示高级设置...&gt;清除浏览数据...&gt;签入'缓存的图像和文件'&gt;清除浏览数据。

答案 5 :(得分:0)

如果安装ASP.Net 5 RC1后,任何人在Visual Studio 2015上遇到相同的问题。检查浏览器链接仪表板是否显示&#34;没有当前连接&#34;在运行或调试DNX项目时,修复更新将解决问题:

  • 关闭Visual Studio
  • 打开控制面板&gt;程序和功能
  • 右键单击&#34; Microsoft ASP.NET 5 RC1 Update 1&#34;
  • 点击&#34;更改&#34;
  • 在ASP.NET 5 RC1 Update 1安装程序中,单击&#34;修复&#34;

答案 6 :(得分:0)

在我们的例子中,我们在 Sources - Page 标签上设置了错误的 workspace 目录。
即它指向 project-master 但我们实际上是在 project-branch

中调试

所以解决方案只是设置正确的工作区目录。