【发布时间】:2019-07-01 16:05:42
【问题描述】:
我一直在尝试将 NOTY 与 Aurelia/Typescript 应用程序一起使用。使用 NPM 安装包并使用 requireJS 将其拉入应用程序。
无论我尝试什么,我都无法让它工作。为了在我需要参考的文件中导入它,我尝试了以下两种方法
尝试#1
import * as Noty from 'noty';
这似乎创建了正确的引用,我可以在代码中看到这一点。当我尝试使用它时,我没有收到任何构建错误,并且一切正常。
但是当我运行这段代码时,我得到一个错误,指出 - "Noty is not a constructor"
尝试 2
import Noty from 'noty'
这种方法抱怨没有默认导出成员。
我尝试的另一个变体是 import { Noty } from 'noty'; 这给了我类似的响应
不确定我遗漏了什么,但非常感谢任何实现这一点的建议。 TIA
更新#1
PS:如果需要查看 index.d.ts 文件,请添加指向 NOTY 的链接。
【问题讨论】:
-
您是否为
Noty(.d.ts文件)添加了类型定义? -
@adiga:你是这个意思吗?
{ "name": "noty", "path": "../node_modules/noty", "main": "index" } -
您是否在 aurelia 模板或基本 HTML 文件中包含了对 NOTY 脚本的引用?你确定 requireJS 正在成功加载 NOTY 脚本文件吗?
-
@JoyalToTheWorld - 新手 - 你能提供更多信息吗?我相信我没有。我正在进一步调试,发现该模块在运行时未定义。
-
@Ron 也许你可以用你的 requireJS 配置更新你的帖子。这应该负责加载您的脚本,您需要将“NOTY”包名称映射到磁盘上脚本的位置,类似于您在上面回复 adiga 时发布的内容。此外,您可以检查开发工具,看看是否有任何失败的请求,将请求中的路径与您在磁盘上实际看到的路径进行比较。希望对您有所帮助。
标签: typescript aurelia noty