TS2307:找不到模块 'ionic/ionic'

TS2307: Cannot find module 'ionic/ionic'

当尝试将 tsc 用于我的 ionic2 项目时,我在 typescript 文件中收到以下错误。

错误: TS2307: Cannot find module 'ionic/ionic'


代码:

import {Page} from "ionic/ionic" //error happens on this line

@Page({
  templateUrl: 'app/list/list.html',
})
export class ListPage {
  constructor() {}
}

我的 tsconfig.json 文件:

{
  "compilerOptions": {
    "target": "ES5",
    "module": "commonjs",
    "sourceMap": true,
    "isolatedModules": true,
    "noEmitOnError": false,
    "rootDir": ".",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true
  },
  "compileOnSave": false
}

我的 npm -g 列表:

cordova@5.4.0
ionic@2.0.0-alpha.23
npm@3.4.1
typescript@1.6.2

你需要包含 ionic typescript 定义文件。 你可以在这里下载 https://www.nuget.org/packages/cordova-ionic.TypeScript.DefinitelyTyped/

issue 84

我们仍然需要为 ionic 2 创建一个定义文件。所以在那之前,typescript 编译器会大喊大叫,但它仍然会正确编译代码。

这似乎已在 "ionic-framework": "2.0.0-alpha.38" 中解决。

我在 ionic2.0.0-beta.17

上遇到了同样的问题

打字稿需要更改所有核心组件的导入路径

你的情况来自

从 "ionic/ionic"

导入 {Page}

从 'ionic-framework/ionic'

导入 {Page}

P.s:这仅适用于打字稿。对于本机 JS ionic2 应用程序路径保持不变 (ionic/ionic)。