ERROR ReferenceError: Q is not defined in Angular 11 project
ERROR ReferenceError: Q is not defined in Angular 11 project
我在我的 Angular 11 项目 (myCustomJS.js) 中添加了一个使用 Q 库的自定义 javascript 文件。
但是,我的 javascript 文件中的以下代码行出现“错误 ReferenceError:Q 未定义”。
错误:“错误参考错误: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 is not defined 错误。
我能够通过在 /node_modules/q/q.js 文件中注释 2 行(第 46 行和第 47 行 - else if block)来解决“Q not defined”问题(见下面的截图)。由于这两行,它无法将 Q 定义为全局变量,特别是当它找到 RequireJS 时。一旦被注释掉,它就会进入另一个定义 Q 全局变量的 else if 块。
这里有几篇文章和与此问题相关的不同解决方案:
- Running Q on page with Require.js
- How to load Q library with Require.js
我在我的 Angular 11 项目 (myCustomJS.js) 中添加了一个使用 Q 库的自定义 javascript 文件。
但是,我的 javascript 文件中的以下代码行出现“错误 ReferenceError:Q 未定义”。
错误:“错误参考错误: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 is not defined 错误。
我能够通过在 /node_modules/q/q.js 文件中注释 2 行(第 46 行和第 47 行 - else if block)来解决“Q not defined”问题(见下面的截图)。由于这两行,它无法将 Q 定义为全局变量,特别是当它找到 RequireJS 时。一旦被注释掉,它就会进入另一个定义 Q 全局变量的 else if 块。
这里有几篇文章和与此问题相关的不同解决方案:
- Running Q on page with Require.js
- How to load Q library with Require.js