【发布时间】:2021-01-12 06:33:52
【问题描述】:
我在使用 Q 库的 Angular 11 项目 (myCustomJS.js) 中添加了一个自定义 javascript 文件。
但是,我在我的 javascript 文件中的以下代码行中收到“ERROR ReferenceError: Q is not defined”。
错误:“错误参考错误:Q 未定义”
上线:var deferred = Q.defer();
仅供参考,我在 package.config 中添加了以下软件包:
{
"@types/q": "^1.5.4",
"q": "^1.5.1",
}
我在 angular.json 文件中添加了以下内容:
"scripts": [
"node_modules/q/q.js", // Added reference to Q Library
"src/assets/js/myCustomJS.js" // My Custom Javascript File
]
在 tsconfig.app.json 文件中添加了以下类型:
"types": [
"jquery",
"q" // Added q type definitions
]
不确定我是否在我的 Angular 11 项目中遗漏了更多参考资料。请建议如何修复 Q 未定义错误。
【问题讨论】:
-
您可能缺少在您的 app.module.ts 或您想要使用它的任何模块中导入它
-
我添加了“import * as Q from 'q';”并在 app.module.ts 的导入数组中添加了 Q 但这会导致不同的编译错误...例如: TS2322: Type 'typeof Q' is not assignable to type 'any[] |类型 | ModuleWithProviders'