如何配置 gulp 以便它可以使用 Angular2 找到 jquery "names"



我正在使用angular beta .8,我正在使用gulp来尝试将我的应用程序部署到apache http服务器。

我有一个像这样的。ts文件:

import {Component, OnInit} from 'angular2/core';
export class Calendar implements OnInit {
date: any;
   ngOnInit() {
       $('.datepicker').pickadate({

当我尝试启动"gulp"命令时,它显示了多个错误,目前我正在试图解决这个问题:

error TS2304: Cannot find name '$'.

我不知道如何为转译器提供这个,当环顾四周时,我发现了解决方案的两个分支:将/// <reference path="../node_modules/angular2/typings/browser.d.ts" />添加到我拥有引导的地方,我做了,并添加了我目前拥有的类型:

{
  "ambientDependencies": {
    "es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim/es6-shim.d.ts#4de74cb527395c13ba20b438c3a7a419ad931f1c",
    "jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#bc92442c075929849ec41d28ab618892ba493504"
  },
  "globalDependencies": {
    "es6-collections": "registry:dt/es6-collections#0.5.1+20160316155526",
    "es6-promise": "registry:dt/es6-promise#0.0.0+20160614011821"
  }
}

它没有解决任何问题,所以我想知道我还需要什么来使这个错误消失。

我也有其他的错误,我不确定他们是否相关,主要是抱怨没有找到名称'Observable', 'OnInit',我在我的。ts文件中引用的几个。js函数,和一些

TS2307 cannot find module 'ng2-material/all' 

或不同的typescript文件,它似乎没有找到。

我想说的是,如果在plunker上或在浏览器中执行,代码确实可以工作,但当试图使用gulp部署它时,它就不起作用了。

我已经阅读了这个线程并应用了所有内容,但正如我所说的,它不适合我,Angular 2 typescript无法找到名称

对于第一个错误,它看起来像你试图使用jQuery($),但typescript编译器不知道那是什么。尝试像下面这样添加declare语句:

import {Component, OnInit} from 'angular2/core';
declare var $: any;
export class Calendar implements OnInit {
   ...

这只是告诉编译器$是第三方javascript文件(这里是jquery)中定义的'any'类型的变量。

相关内容

最新更新