找不到文件名' cssSelectorHelper'

时间:2016-10-14 08:44:33

标签: angular typescript

我是Angular 2的新手。最近我按照youtube教程从头开始构建一个MEAN应用程序(它也在github中,enter link description here)。然后我尝试将其与引导管理模板(enter link description here)集成。

问题出现了 - 在运行bootstrap管理模板项目时,没有问题。然后我复制管理模板&#34;客户端&#34;文件夹到MEAN APP并使用npm install解决依赖关系。虽然我已经安装了所有依赖项,但Visual Studio代码仍然报告 [ts]在chart.component.ts中找不到名称&#39; <&#39; (在上面的bootstrap管理模板链接中) ,导航到/SB-Admin-BS4-Angular-2/src/client/app/dashboard/charts/chart.component.ts)(抱歉,我不能发布2个以上的链接)

  

var areaChart:any = $ (&#39;#area-chart&#39;);

交叉引用回原始工作管理模板,dollarign&#34; $&#34;被解释为typescript中的cssSelectorHelper。

然后我试图宣布以下内容:

  

声明var $:cssSelectorHelper ;

然后报告 [ts]无法找到姓名&cssSelectorHelper&#39; 。这让我觉得问题可能是由于打字稿无法识别cssSelectorHelper。

任何人都可以建议如何解决这个问题? (我是所有这些的新手。如果上述解释没有意义,请帮助澄清。)

提前致谢。

2 个答案:

答案 0 :(得分:0)

前端开发中的

$通常用于jQuery。您必须将jQuery添加为脚本标记并放入

declare var $: any;

位于.ts文件的顶部。

请记住,混合Angular和jQuery是不赞成的,最好的做法是实现你在Angular 2本身尝试做的事情。

答案 1 :(得分:0)

Angular 2是MVCMVVM模式的框架,而JQuery有点功能。是的,使用可以在Angular 2中使用JQuery,但大多数情况下他们不会。然而,有些人仍然发现在为每个元素编写指令或组件时会很复杂。

这里的问题是当您使用脚本标记在html文件中导入jquery时,Angular 2编译器并不知道。因此,您必须以某种方式告诉编译器已导入jquery。有些人只是简单地包含declare var $: JQueryStatic或类似的东西。但是对jquery和其他库执行此操作的最标准方法是安装明确键入的文件使用类型。

首先,您必须安装typings https://github.com/typings/typings,然后搜索您想要的库并安装其明确类型的文件。

然后只需在/// <reference path="path_to_jquery/jquery.d.ts" />文件的顶部添加.ts即可完成所有操作! VSCode将支持intellisense和所有其他东西给你!