热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

试图了解RxJS导入

如何解决《试图了解RxJS导入》经验,为你挑选了1个好方法。

我很难弄清楚这个import语句究竟是如何工作的(在一个用Typescript编写的Angular应用程序中):

import 'rxjs/add/operator/toPromise';

我得到的rxjs是映射到node_modulesSystemJS配置文件中的相应子文件夹,但后来我被卡住了.我看到有一个index.js文件,但我不知道这是否或如何有助于解决该add/operator/...部分.

同样,我不明白这个:

import {Observable} from 'rxjs/Observable';

同样,Observable.*这个地方没有文件文件.我猜它在某种程度上可以通过index.js文件工作,但我真的希望得到一个更透彻的理解,因为我读到很容易导入所有RxJS,这增加了页面加载时间.

我仔细看了一下Typescript模块解析文档,但我觉得这还不足以解释它.

更新:阅读下面接受的答案后,我发现我一直在查看node_modules/rx目录而不是node_modules/rxjs导入语句与目录结构完全匹配.



1> martin..:

它非常简单,因为默认情况下TypeScript会查找node_modules目录.

导入以下内容:

import {Observable} from 'rxjs/Observable';

解决了node_modules/rxjs/Observable.d.ts足以编译代码的问题.

同样,导入rxjs/add/operator/toPromise也被解析为node_modules/rxjs/add/operator/toPromise.ts.顺便说一下,您可以使用--traceResolution编译器选项来查看测试的TypeScript路径.

当你有编译的JS(例如commonjs格式)时,你可以运行你的应用程序,node因为它将调用require('rxjs/Observable')哪个将解析node_modules/rxjs/Observable.js.然后类似的rxjs/add/operator/toPromise.

请注意,RxJS github页面的代码结构与实际的npm包不同.基本上,只有package.jsonsrc编译.js.d.ts文件的目录上传到npm存储库(原始.ts源文件在,node_modules/rxjs/src但你永远不想直接使用它们).


推荐阅读
  • 本文介绍了JavaScript进化到TypeScript的历史和背景,解释了TypeScript相对于JavaScript的优势和特点。作者分享了自己对TypeScript的观察和认识,并提到了在项目开发中使用TypeScript的好处。最后,作者表示对TypeScript进行尝试和探索的态度。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
  • 小编给大家分享一下TypeScript2.7有什么改进,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收 ... [详细]
  • 我试图在Angular2应用程序中使用元素调整大小检测器库(https:github.comwnrelement-resize-detector).根据我有限的JS模块知识,该库似 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Node.js学习笔记(一)package.json及cnpm
    本文介绍了Node.js中包的概念,以及如何使用包来统一管理具有相互依赖关系的模块。同时还介绍了NPM(Node Package Manager)的基本介绍和使用方法,以及如何通过NPM下载第三方模块。 ... [详细]
  • React 小白初入门
    推荐学习:React官方文档:https:react.docschina.orgReact菜鸟教程:https:www.runoob.c ... [详细]
  • ReactJSUIAnt设计空组件原文:https://w ... [详细]
  • npminstall-Dbabelcorebabelpreset-envbabelplugin-transform-runtimebabelpolyfillbabel-loader ... [详细]
  • Vue cli2.0 项目中使用Monaco Editor编辑器
    monaco-editor是微软出的一条开源web在线编辑器支持多种语言,代码高亮,代码提示等功能,与VisualStudioCode功能几乎相同。在项目中可能会用带代码编 ... [详细]
author-avatar
琦琦蔡外_734
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有