在本地项目文件夹中加载 JSON 时使用 Angular 2 http 离线

2024-04-09

我一直在尝试使用 http get 方法加载 Angular 2 项目文件夹中存在的本地 json 文件。看下面的示例代码片段:

private _productURL = 'api/products/products.json';    
getProducts(): Observable<any> {
        return this._http.get(this._productURL).map((response : Response) => <IProduct[]> response.json())
        .do(data =>console.log(JSON.stringify(data))).catch(this.handleError);
    }

现在,当我尝试通过连接互联网加载它时,它正在工作。但是当我打开浏览器开发人员选项中的离线复选框时(https://developers.google.com/web/tools/chrome-devtools/network-performance/reference#offline https://developers.google.com/web/tools/chrome-devtools/network-performance/reference#offline),json 再次停止加载。它开始在控制台中向我显示有关“没有互联网连接”的错误,并且不加载任何内容。

还有其他方法可以做到这一点吗?或者使用http get..怎么做?


您可以导入一个json文件,如果您执行以下操作:

使用以下命令创建 json-typings.d.ts 文件:

declare module "*.json" {
    const value: any;
    export default value;
}

这是一个通配符模块定义 https://www.typescriptlang.org/docs/handbook/modules.html这允许我们导入非 javascript 文件(在本例中为 JSON 文件)。

您现在应该能够将 json 文件导入到您的项目中:

import * as products from "./products.json";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在本地项目文件夹中加载 JSON 时使用 Angular 2 http 离线 的相关文章

  • 在 swift 中将简单字符串转换为 JSON 字符串

    我知道有一个同标题的问题here https stackoverflow com questions 30825755 convert string to json string in swift 但在那个问题中 他试图将字典转换为 JSO
  • 在鼠标光标位置添加 cytoscape 节点

    我想在画布上的单击事件上的鼠标箭头位置添加一个 cytoscape 节点 我怎样才能做到这一点 我的方法 效果不太好 我可以通过单击创建一个节点 但无法确保创建的节点的位置位于我单击的位置 使用这样的东西 cy click function
  • FakeAsync/tick (Async/whenStable) 与 detectorChanges()

    您能帮我区分这两件事吗 根据我的理解 如果你只使用 observable 你可以使用 detectorChanges 因此 您可以直接更改组件属性或监视服务调用并返回可观察的值 然后调用 detectorChanges 更改将在 html
  • 以一定时间间隔连续重复运行 JavaScript 函数

    这是我的第一个问题 希望您尽快回答 我想要代码连续重复一个函数 我尝试了一些代码 但没有成功 我尝试了这段代码 我想在一段时间后重复这个功能 我努力了setInterval and setTimeout 但是 我还没有收到结果 这将重复该任
  • 启用/禁用由用户输入确定的复选框

    我有一个简单的表单 用户可以在其中输入他的联系号码 如果联系号码以 07 开头 则该复选框已启用 其他我需要禁用它的复选框 我已经编写了一些代码 但我面临的问题是 当用户键入 01 时 它会被禁用 但如果他们继续在 01 之后添加任何其他数
  • 将 JSON 反序列化为表

    我需要根据通过 API 接收的数据填充 ABAP 中的表 我正在使用以下 ABAP 函数从 json 填充现有的 ABAP 表 JSON 是正确的 表中包含相应的表 ui2 cl json gt deserialize EXPORTING
  • 如何以编程方式退出或关闭 Javascript UWP 应用程序? (Windows 10)

    我制作了一个游戏 它需要自己的退出按钮 我无法使用CoreApplication Exit https msdn microsoft com en us library windows apps windows applicationmod
  • 判断一个数字是否能被 3 或 5 整除 (FizzBu​​zz)

    如何根据输出是否能被 3 或 5 整除来更改输出 如果它能被 3 整除 我想显示 rock 如果它能被 5 整除 我想显示 star 类似于 FizzBu zz 如果两者都有 他们都会看到 这是我的代码 if var n Math floo
  • 原生元素聚焦功能不起作用

    我试图通过单击按钮自动聚焦在输入元素上 请参阅打字稿 ViewChild envFilter envFilter ElementRef onFilterSelect this envFilter nativeElement focus 在
  • 如何从 JSON 响应重定向?

    所以我尝试使用 Flask 和 Javascript 上传器 Dropzone 上传文件并在上传完成后重定向 文件上传正常 但在烧瓶中使用传统的重定向 return redirect http somesite com 不执行任何操作 页面
  • 在 Fabric.js 中按宽度/高度在另一个画布对象内居中和缩放画布对象

    Goal 将一个对象 水平和垂直 置于另一个对象 矩形或组 的中心canvas via Fabric js或者通过Javascript保持原始对象的长宽比相同 但也不超过父对象的宽度 高度比例 父对象 矩形或组 不会居中于canvas元素
  • 如何在 Angular 项目中使用 Bootstrap?

    我开始我的第一次Angular应用程序和我的基本设置已完成 我怎样才能添加引导程序我的申请 如果您可以提供一个示例 那么这将是一个很大的帮助 如果您使用Angular CLI要生成新项目 还有另一种方法可以使 bootstrap 可访问角度
  • 禁用特定 div 上的 Tab 键

    我有以下结构 div div Some content div div Some content div div 我想 禁用 div2 上的 tab 键 我的意思是按下 tab 键时 div2 的元素不会获得焦点 有没有简单的方法可以使用
  • Knockout.js 安全绑定

    我想使用带有淘汰赛的安全绑定 为此我使用敲除安全绑定 js https github com brianmhunt knockout secure binding 谁能解释一下为什么下面的代码不起作用 它会抛出一个错误 未捕获 淘汰 安全
  • JavaScript 数组扩展语法的时间复杂度是多少?

    我想知道在 JavaScript 中使用数组扩展的时间复杂度是多少 是线性 O n 还是常数 O 1 下面的语法示例 let lar Math max nums 传播称为 Symbol iterator 有关对象的属性 对于数组 这将迭代数
  • JavaScript:测试与执行

    我想知道检查字符串 例如邮件 密码等 的最佳方法是什么 i exec a vs i test a exec返回值 test true test 1 way var mail req body mail if check mail exec
  • 在 HTML5 iOS 7 / iOS 8 中显示十进制键盘

    经过几个小时的搜索后 我只是有一个简单的问题 是否有可能在网络浏览器输入字段中显示小数键盘 input type number 只显示数字 但我需要在左下角使用逗号或点 我尝试过任何事情 pattern step等等 但没有显示十进制键盘
  • Node npm 包抛出使用严格:全局发布和安装后未找到命令

    我正在尝试发布 npm 包 当我全局安装该包并尝试运行 cli 命令时 我收到此错误 nvm versions node v0 12 2 bin myPack line 1 use strict command not found nvm
  • Internet Explorer 9 是否会因数组和对象文字末尾的额外逗号而卡住?

    现代浏览器和 Node js 等环境允许您说 a 1 b 2 或 1 2 3 这在历史上一直是 Internet Explorer 的问题 Internet Explorer 9 中修复了此问题吗 对此有两种不同的答案 一种是对象初始值设定
  • 从输入类型编号获取无效值

    我正在使用输入类型数字 当它无效时 我如何从中获取值 例如 使用类型编号并仅打印 e 这本身是无效的 我正在使用 React 但我认为这个问题非常普遍 onChange event console log event target valu

随机推荐

  • staruml 抽象类?

    有谁知道如何使用 StarUML 创建抽象类 我在文档中找不到任何提及 是否有某种反映抽象类的更一般的概念 从工具箱中选择类并将其添加到画布中 然后转到属性选择 isAbstract 复选框 然后类名显示为斜体
  • C++ timegm 将 DST 转换为未来某个给定时间的某个时区?

    我需要在我的班级中从 UTC 时间准确转换为给定时区的本地时间 无论 DST 是否有效 我的问题是 当我使用struct tm我必须提供 tm isdst 成员 或者将其保留为 1 以自动确定 from mktime 3 linux man
  • 关于Android应用程序更新的问题

    几个问题 升级应用程序对存储的数据 即首选项和数据库 有什么影响 系统是否执行新版本的全新安装 即删除旧版本然后安装新版本 或其他操作 如果用户想要保留存储的数据 例如共享首选项或 SQLite 数据库中的值 怎么办 如何模拟此应用程序更新
  • 在 Android Lollipop 5.0.1 的工作配置文件中安装未知来源的应用程序

    问题与 工作简介 相关安卓工作用 我编写了一个示例应用程序 它创建托管工作配置文件并将其自身设置为个人资料所有者 我需要通过配置文件所有者推送一些企业应用程序 因此 当我尝试安装时 它显示 安装被阻止 无法从未知来源安装 如果我切换按钮 设
  • 尝试使用 chrome.downloads (由于某种原因未定义)[重复]

    这个问题在这里已经有答案了 我正在尝试使用 Chrome 扩展从 URL 下载文件 图像 chrome 下载 https developer chrome com extensions downloads 但由于某种原因chrome dow
  • LINQ to Entities 无法识别该方法

    我在使用 Linq to Entities 时遇到问题 无法找到解决方法 这是我的代码 var queryResult result Where x gt x FollowedUp Value GetWeekFromDateTime Dat
  • 专门用于shared_ptr的集合

    是否存在一个集合 它知道shared ptr内部 并避免定期复制存储的shared ptr元素 而只复制其内部弱指针 这隐含地意味着 不会执行任何构造函数 析构函数调用 并且不会对shared ptrs的引用计数器进行操作 理论上 在采用C
  • 使用布尔系列/数组从 pandas 数据框中选择

    我有一个数据框 High Low Close Date 2009 02 11 30 20 29 41 29 87 2009 02 12 30 28 29 32 30 24 2009 02 13 30 45 29 96 30 10 2009
  • 避免在会话中存储不同 SQL 模式的连接字符串

    我计划在 Azure 中建立一个多租户应用程序 其中通过架构分离实现数据隔离 我计划使用子域来识别租户 想法是从子域获取租户名称 从登录页面获取用户 ID 和密码 并验证 uid 密码和租户 ID 以进行身份 验证 如果经过身份验证 则应用
  • 如何将 Typescript 模块转换为 JavaScript

    我有一个像这样的 src 工作目录 src functions final utils I have two文件 都在 final 内 我需要将其从打字稿转换为JavaScript才能在浏览器中运行 问题是 我的最终文件正在从其他 src
  • 如何修复 py2app 上的 distutils.errors.DistutilsError? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我最近尝试使用 py2app 并且有一个名为 test py 的简单应用程序 一切都很好 直到我输入 python3 setup
  • 如何使用 Xamarin.Forms 显示警报框以进行验证?

    How to 使用 Xamarin Forms 显示警报框用于验证 我知道我们可以使用 ContentView 代码后面的以下代码显示警报 但我想显示我的 ViewModel 中的警报框 DisplayAlert Alert You hav
  • 失败安装解析失败清单格式错误

    我在安装应用程序时遇到一个奇怪的问题 当我编译我的项目时没有错误 但是当我尝试启动它时显示 安装错误 INSTALL PARSE FAILED MANIFEST MALFORMED Error 我已经尝试了很多与安装错误相关的事情 INST
  • Azure 数据工厂 V2 中的分页规则值(适用于 Rest API)

    我正在尝试填写Value分页规则内的框解释于本文 https sqlkover com azure data factory and the exact online rest api dealing with pagination 最近发
  • 使用 Ruby 控制 Tor 客户端

    我正在编写一个 Ruby 脚本 它会自动抓取网站进行数据分析 现在我有一个相当复杂的需求 我必须能够模拟来自多个国家 大约 20 个不同国家 的访问 该网站将根据 IP 位置包含不同的信息 因此完成该操作的唯一方法是从实际位于该国家 地区的
  • Snakemake 输出中的 lambda 函数

    我目前有一个snakemake工作流程 需要使用lambda通配符 设置如下 蛇文件 configfile config yaml workdir config work rule all input expand logs bwa ref
  • 为什么 JSON_UNESCAPED_LINE_TERMINATORS 没有转义我的换行符?

    基于文档 http docs php net manual en json constants php 我预计JSON UNESCAPED LINE TERMINATORS保留换行符 n 字符未转义 因此在编码 JSON 时作为实际换行符
  • C# 中的异步递归安全吗(异步 ctp/.net 4.5)?

    在使用 async ctp 或 vs net 2011 beta 的 C 中 我们可以编写如下递归代码 public async void AwaitSocket var socket await this AcceptSocketAsyn
  • bindActionCreators 和 mapDispatchToProps - 我需要它们吗?

    我正在查看一个 React Redux 应用程序 并尝试了解一切是如何工作的 在其中一个组件中 我看到了以下几行代码 import bindActionCreators from redux function mapDispatchToPr
  • 在本地项目文件夹中加载 JSON 时使用 Angular 2 http 离线

    我一直在尝试使用 http get 方法加载 Angular 2 项目文件夹中存在的本地 json 文件 看下面的示例代码片段 private productURL api products products json getProduct