在 Angular 2 中使用节点模块

Posted

技术标签:

【中文标题】在 Angular 2 中使用节点模块【英文标题】:Using Node Module in Angular 2 【发布时间】:2017-04-01 06:56:15 【问题描述】:

我正在学习 Angular 2 并尝试使用 Ionic 2 RC0 构建一个移动应用程序,该应用程序使用 Angular 2 和 TypeScript。我试图在我的应用程序中使用节点模块woocommerce-api,但我总是遇到错误。

我使用 npm 安装了模块。

npm install --save woocommerce-api

然后在我的 .ts 文件中,我尝试像这样导入它,

import * as WC from '../../../node_modules/woocommerce-api'

虽然 VS Code 没有显示任何错误,但我仍然无法在我的方法和构造函数中使用它。 我不介意没有智能感知帮助,但我只想让这个模块工作。

非常感谢任何帮助。提前致谢。

PS:this 模块没有可用的类型。

【问题讨论】:

错误是什么?你用 webpack 吗? 编译的时候没有报错比较奇怪,不过可以用declare var WC: any;快速声明。 (你可以使用import * as WC from 'woocommerce-api' @Julian:我在编译过程中遇到错误,这就是为什么没有构建 main.js 的原因。根本无法继续。 发生了什么:import * as WC from "woocommerce-api"; 在模块名称下给了我红色波浪线。 import * as WC from "../../../node_modules/woocommerce-api"; 没有给出错误但编译失败,Rollup: treating net as external dependency 错误。 【参考方案1】:

net 是一个 node.js 模块,在浏览器中不可用,因此无法找到。 但如果你看一下 repo,它只是一个简单的wrapper。

最好用angular新建一个服务,直接用angulars http调用Api。

【讨论】:

这也需要我实施 OAuth 1.0a,因为它是必需的。 您可以使用支持浏览器的模块。但是您不应该使用客户端的身份验证密钥。如果需要类似的东西,您必须创建一个返回此类数据的简单节点服务器

以上是关于在 Angular 2 中使用节点模块的主要内容,如果未能解决你的问题,请参考以下文章

在 VScode 中找不到 @angular/fire/firestore 模块错误

错误找不到模块'@angular/material

“ng2-CKEditor”节点模块不适用于打字稿[Angular2]

在 Angular 2 应用程序中导入节点 js 模块

在 Angular 4 中使用节点模块(网站刮板)使用失败

在 Angularjs 中使用节点模块