2016-12-04 95 views
2

我有一个Angular 2应用程序,并且正在尝试按照软件包的自述文件中的说明安装angular2-autosize组件(https://github.com/stevepapa/angular2-autosize)。我运行下面的命令:安装npm后Angular 2找不到模块

npm install angular2-autosize --save

其成功完成。我可以在'node_modules'目录中看到'angular2-autosize'文件夹。 此外,依赖被添加到我的package.json为 "angular2-autosize": "^1.0.1",

现在,我去我的 'app.module.ts' 文件,并添加这样的:

import { Autosize } from 'angular2-autosize'; @NgModule({ declarations: [ .. Autosize

并尝试建立与ng build,其失败的说法,

Cannot find module 'angular2-autosize'.

能否社区请帮我解决这个问题?谢谢。

回答

6

我在app.module.ts文件改变

import { Autosize } from 'angular2-autosize';


import { Autosize } from 'angular2-autosize/angular2-autosize';

和它的工作:)

+0

如何处理“相应的文件不包含在tsconfig.json”错误? – Mojtaba

0

有很多问题,这个NPM包(实际版本是1.0.1)。 实际上这个包没有index.ts文件,所以你需要引用它包含的文件。这是你需要指定您的导入文件:

import { Autosize } from 'angular2-autosize/angular2-autosize'; 

其次,包不包括捆绑JavaScript文件,所以当你编译应用程序,编译器将要包括的自动调整指令你自己的javacsript文件。您应该看到这样的事情在你的javscript文件(我知道这是丑陋):

System.register("../../node_modules/angular2-autosize/src/autosize.directive", ["@angular/core"], function (exports_67, context_67) { 
... 
}); 

但可能是在你的tsconfig.json文件,你exlcude的node_modules目录,所以在这种情况下,你可以得到这样的错误:不包括在tsconfig.json

在这种情况下

相应的文件,你可以尝试从tsconfig.json文件排除条目删除node_modules目录。