有人在"ng serve"中面临以下警告吗?
./node_modules/@angular/compiler/src/util. js中的警告10:24 - 31关键依赖项:require函数的使用方式使得依赖关系不能被静态提取“wdm”:编译警告。
Angular 版本:
Angular CLI:6.0.8节点:8.11.3操作系统:达尔文x64Angular :6.0.9 ...动画,通用,编译器,编译器-cli,核心,窗体... http,语言服务,平台浏览器...平台浏览器-动态,路由器,升级
我尝试更新CLI和Angular,但没有成功。util.js内的代码如下所示:
function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define("@angular/compiler/src/util", ["require", "exports"], factory);
}
}
8条答案
按热度按时间oyxsuwqo1#
我得到了这个错误,发现这:https://fluin.io/blog/critical-dependency-cannot-be-statically-extracted,作者显示他得到了同样的警告。然而,我没有使用Angular 元素,但我觉得它可能与同样的问题有关,所以我继续检查我是否在任何导入中使用了
@angular/compiler/src/core
。我确实是这样做的。修复就像删除导入行一样简单,在我的例子中是:
然后编辑器自动导入,如下所示:
yacmzcpb2#
当我错误地从
protractor
而不是@angular/core
导入EventEmitter
时,我遇到了同样的错误。将
import { EventEmitter } from 'protractor';
更改为import { EventEmitter } from '@angular/core';
修复了该问题。pgvzfuti3#
如果从src路径导入,则会抛出此警告
将组件import语句从
到
mnemlml84#
在应用中搜索导入。
您很有可能错误地导入了类似于
from '@angular/compiler/foo'
的内容。odopli945#
我发现了一个类似的问题:
./节点模块/@Angular /编译器/源代码/实用程序. js:10:24 - 31-警告:关键依赖性:require函数的使用方式使依赖项无法静态提取
我记得我使用了stringify而不是JSON. stringify,这个自动导入(使用vs代码)为:
我删除了这个自动导入,并将代码更正为JSON.stringify。
cwdobuhd6#
只是为了补充这一点,非常相似,但它似乎进口一些东西从Angular 做它。我的是这样的:
我无意中输入了
throw error()
而不是throw Error()
,它导入了那个并触发了警告。yhqotfr87#
我遇到了这个错误(如标题所示)和其他几个错误,因为我试图实现一个第3方库。
所以简而言之,如果你得到这些错误,试着看看你的第3方库。在我的例子中,它是一个来自Scanbotiderio的条形码扫描库。
u59ebvdq8#
从这进口发生在我身上:
我有一个消息界面,但自动填充导入功能默认为上面的一个。