我在Angular 4项目中添加了ng2-datetime模块。
现在问题我正面临着ng测试。
目前它会抛出如下错误。
'Cannot find name 'jQuery'
'Cannot find name '$'
编辑:
我确实尝试过与下面大多数答案相同的方式,在 typings.d.ts
中添加以下行declare var jQuery: any;
declare var $: any;
这将开始测试'但是使用 ng build --prod 进行构建时会出错。
Cannot redeclare block-scoped variable 'jQuery'
Cannot redeclare block-scoped variable '$'
TIA
答案 0 :(得分:1)
尝试在typings.d.ts
上添加此内容:
declare jQuery: any;
该变量将在您的所有应用中提供
但如果可以,请尽量避免使用jQuery
答案 1 :(得分:1)
我没有在'类型'中添加' jQuery' tsconfig.spec.json 文件中的部分。
此后它开始工作。
答案 2 :(得分:0)
在index.html中将<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
放入标记中,并在您使用它们的component.ts中声明此变量
declare var jquery:any;
declare var $ :any;
答案 3 :(得分:0)
当您使用需要jQuery但未声明jQuery变量的插件时,会出现此问题。您可以通过在组件顶部添加它来修复它:
declare jQuery: any;
然而,使用jQuery访问您的DOM并不是Angular项目中的良好做法,并且当您想要实现angular universal
之类的内容时会很烦人你的项目。
尝试使用ngx-bootstrap
插件,其中包含更清晰的日期选择器: