angular - 未捕获的 ReferenceError:在cheerio.js:5 中未定义要求
问题描述
我正在尝试将“购物”部分添加到我的 Angular 6 应用程序中。这个购物部分将包含一个搜索栏,它将搜索亚马逊并返回用户想要的任何内容的列表。例如,用户搜索锤子,列表将包含锤子。为此,我正在尝试使用 Cheerio 进行网络抓取。当试图在我的 TypeScript 文件中声明它时:
declare var require: any;
const request = require("request");
const cheerio = require("cheerio");
任何帮助将不胜感激,或者任何关于我试图实现的替代解决方案的建议都会非常有帮助。
解决方案
如果您在浏览器中运行您的代码,您将需要使用的不仅仅是 typescript 编译器来构建您的项目。这是因为浏览器本身不支持对require
. 不用担心,不要让这阻止你!有大量成熟的工具通过将所需的代码捆绑到可在浏览器中使用的文件中来解决这个特定问题。
文档中有关于这些构建工具的完整部分:https ://www.typescriptlang.org/docs/handbook/integrating-with-build-tools.html
推荐阅读
- angular - 当数组已定义打字稿时,奇怪的“无法读取未定义的属性”推送“错误
- docker - 从另一个容器访问一个容器中的 MySQL
- angular - 如何在 Datatable Angular 6 中使用“fixedColumns”
- java - Java android改造2空响应
- firebase - firestore rest url 适用于浏览器,但不适用于移动设备
- c++ - 派生类和解构器对“vtable”的未定义引用
- java - 如何将 HttpSession 从 WildFly 外部化到 Redis?(不包括春季会议)
- angular - 使用 fullcalendar 4 和 angular 8 在 init 上加载事件
- uipath - 如何以“/”作为分隔符拆分字符串?
- python - 如何从对话框更改重绘小部件?