当前位置 : 主页 > 网页制作 > Nodejs >

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

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在试验Angular 2.我使用npm start在Chrome中创建一个实时编码环境,我看到了不寻常的行为. 我的代码库的早期版本在文件A.service.ts中显示如下: export class AService{ constructor( private http : H
我正在试验Angular 2.我使用npm start在Chrome中创建一个实时编码环境,我看到了不寻常的行为.

我的代码库的早期版本在文件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”.

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

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

我在检查器中执行代码执行,检查器逐行检查新代码,现在看起来像这样:

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

调试行告诉我,执行的下一个命令应该在控制台上输入字符串“Testing AService …”,但是不是这样,我看到了我之前实现的“输出A”.我检查了.ts文件,我检查了.js文件,并且都显示了新的代码库. Chrome显示新的代码库,但控制台正在从OLD代码库接收日志消息.

我用Ctrl-C来关闭npm,再次调用npm start,我仍然看到旧代码库的输出….

这对我来说真是令人困惑!关于可能发生的事情的任何想法?

浏览器缓存擦除之后的屏幕截图,然后是系统重启:

更新

重新启动系统并擦除所有缓存后,我再次搜索了所有.js文件,发现我的原始代码库实际上是在.js文件中.我的问题的答案似乎在于删除这些文件然后重新启动NPM ….在监视模式下运行TSC应用程序时,某些事情阻止了NPM覆盖JavaScript文件.

我的问题的答案似乎在于删除这些文件然后重新启动NPM ….在监视模式下运行TSC应用程序时,某些事情阻止了NPM覆盖JavaScript文件.

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

网友评论