我尝试像这样测试我的Angular2服务:
'C:/ MyAngularApp / src / app / common'中的spec.ts文件
let testFile = "./test.json"; // full path: C:\MyAngularApp\src\app\common\test.json
http.get(testFile).map(d => d.json()).subscribe(()=>log("it works"))
但我无法让它发挥作用 - 我得到了:
失败:状态为响应:网址为404:http://localhost:9876/test.json
我试图将此文件放在其他位置:
但没有结果。
我相信这是路径上的事情..
这就是我想通过http.get加载本地文件的原因: 我想为我的一些服务制作一些额外的图层。我称之为“HttpResourse”,其中包含以下方法:Create(),Get(),Update(),Delete()和SetResourceUrl(resourceUrl:string)。最后一个是我需要按路径加载文件的原因。
答案 0 :(得分:2)
我找到了答案!
当我设置路径为" assets / test.json"一切正常。它不能是" pathToSrc / assets / test.json"或类似的东西。它必须是"资产"或" ./ assets"。
但为什么呢?为什么这个目录("资产")如此特别?