什么阻止我的AngularJs 2应用程序运行检查器中显示的命令?

我正在尝试使用Angular 2.我使用npm start在Chrome中创build一个实时编码环境,并且看到不寻常的行为。

我的代码库的早期版本在文件A.service.ts中出现如下:

 export class AService{ constructor( private http : Http ){} test( valueA : string, valueB : string ){ var dataObj = { valueA, valueB } console.log( dataObj ); console.log( this.http ); } } 

运行我的程序后,控制台将成功显示两个对象。 第一个对象向我展示了值“valueA”和“valueB”,第二个对象是一个Http对象,向我展示了我的服务已经正确加载了,并且方法正在被期望的值所调用。 为了将来的参考,我们将调用这个控制台日志模式“输出A”。

我改变了我的服务定义。 我改了几次。 每次保存文件的新版本时,应用程序都会自动重新加载。 在每个版本上,我都试图将代码和控制台输出添加到服务对象testing方法中。 但是,在每次迭代中,只会出现“输出A”。

我删除了testing方法的所有原始代码,然后再次运行代码,仍然看到“输出A”。

我遵循检查器中的代码执行,检查员将我逐行放在新代码上,现在看起来像这样:

 export class AService{ constructor( private http : Http ){} test( valueA : string, valueB : string ){ console.log( "Testing AService. Method called successfully."); } } 

debugging行显示我执行的下一个命令应该在控制台上loggingstring“Testing AService …”,但不是这样,我看到我之前实现的“Output A”。 我检查了.ts文件,检查了.js文件,并且都显示了新的代码库。 Chrome显示新的代码库,但控制台正在接收来自OLD代码库的日志消息。

我已经使用Ctrl-Cclosuresnpm,并再次调用npm start ,并且仍然看到旧代码库的输出。

这对我来说真是令人困惑! 任何想法可能会发生什么?

浏览器高速caching擦除之后系统重新启动后的屏幕截图:

在这里输入图像描述

更新

重新启动系统并清除所有caching后,我再次search了所有.js文件,发现我的原始代码库WAS实际上是在.js文件中。 我的问题的答案似乎在于删除这些文件,然后重新启动NPM ….在watch模式下运行TSC应用程序时,阻止NPM覆盖JavaScript文件。

我的问题的答案似乎在于删除这些文件,然后重新启动NPM ….当在watch模式下运行TSC应用程序时,有些东西阻止了NPM覆盖JavaScript文件。

请参阅原始问题中的更新。