Angular 5:src/app/app.module.ts(24,24)中出现错误:错误TS2307:找不到模块“https”

问题描述 投票:0回答:6

为 Angular 运行“ngserve”时出现错误。我还看到过一些具有相同消息编号的其他问题,但它们适用于 Angular 2、Angular 4.x 等。

我可以做什么来解决这个问题?

下面是 app.module.ts 文件

蒂亚

更新-仍然有问题

I believe I marked the message resolved too early :) I am getting the following errors when running `ng serve` under Angular 5:

ERROR in src/app/app.module.ts(24,24): error TS2307: Cannot find module 'https'.
src/app/pages/auth-admin/admin-model/user.ts(1,35): error TS2307: Cannot find module 'constants'.
src/app/pages/auth-admin/admin-services/admin-services/admin-services.service.ts(5,25): error TS2307: Cannot find module 'cluster'.
webpack: Failed to compile.

如果我保存文档,那么“webpack”就会编译。我曾考虑过升级系统(希望这能解决问题),但不确定是否会是这样。

感谢任何有关如何解决该问题的帮助。

蒂亚

更新 - 找出问题所在 基本上,我不明白错误消息:-|

我认为这与我的 Angular 5 版本有关 - 所以 - 我使用以下信息进行升级:

来源:https://github.com/angular/angular-cli/issues/4391

[updating globally]
npm uninstall -g angular-cli
npm cache clean
npm install -g @angular/cli@latest

[ updating the project ]
rm -rf node_modules dist
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install
ng update

我尝试用

ng serve

启动服务器

我收到的消息是:

ERROR in src/app/app.module.ts(24,24): error TS2307: Cannot find module 'https'.
src/app/pages/auth-admin/admin-model/user.ts(1,35): error TS2307: Cannot find module 'constants'.
src/app/pages/auth-admin/admin-services/admin-services/admin-services.service.ts(5,25): error TS2307: Cannot find module 'cluster'.

我实际上检查了错误消息中提到的文件,并看到了类似的内容(位于 app.module.ts 中)

从“https”导入{服务器};

举个例子。

其他文件也是如此。我不知道他们是如何到达那里的 - 但是 - 我将它们注释掉并且服务器启动了。话又说回来,我并没有真正得到这个消息。不过,对于 Angular 来说还是个新手。

蒂亚

app.module.ts

    import { BrowserModule } from '@angular/platform-browser';
    import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
    import { NgModule } from '@angular/core';

    import { AgmCoreModule } from '@agm/core';
    import { CalendarModule } from 'angular-calendar';

    import { routing } from './app.routing';
    import { AppSettings } from './app.settings';

    import { AppComponent } from './app.component';
    import { NotFoundComponent } from './pages/errors/not-found/not-found.component';


    import { FormsModule } from '@angular/forms';


    import { AdminServicesService } from './pages/auth-admin/admin-services/admin-services/admin-services.service';
    import { Server } from 'https';


    import 'rxjs/add/operator/switchMap';
    import 'rxjs/add/operator/map';
    import 'rxjs/add/operator/shareReplay';


    import { HttpClientModule } from '@angular/common/http';


@NgModule({
  declarations: [
    AppComponent,
    NotFoundComponent
  ],
  imports: [
    HttpClientModule,
    BrowserModule,
    FormsModule,
    BrowserAnimationsModule,
    AgmCoreModule.forRoot({
      apiKey: 'AIzaSyDe_oVpi9eRSN99G4o6TwVjJbFBNr58NxE'
    }),
    CalendarModule.forRoot(),
    routing
  ],
  providers: [ AppSettings, AdminServicesService ],
  bootstrap: [ AppComponent ]
})
export class AppModule { }

目前正在运行

Angular CLI: 1.6.1
Node: 8.9.4
OS: win32 x64
Angular: 5.1.1
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.6.1
@angular-devkit/build-optimizer: 0.0.38
@angular-devkit/core: 0.0.23
@angular-devkit/schematics: 0.0.42
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.1
@schematics/angular: 0.1.13
typescript: 2.4.2
webpack: 3.10.0
angular
6个回答
11
投票

当您更改应用程序结构添加/删除/移动组件并继续使用热重载时,有时会出现此类错误

error TS2307: Cannot find module
。在这种情况下,您可以尝试停止服务 (CTRL+C) 并重新启动它 (ng-serve)。

检查 Angular CLI 引用的所有模块是否都存在。

此外,此错误(错误 TS2551:“订阅”类型上不存在属性“订阅”)与 Angular CLI 无关,您显然只是尝试在返回订阅的内容上调用

.subscribe
(即已经称为
.subscribe
)。


9
投票

在终端中我已执行此命令并安装了 http 模块。

 npm install --save @angular/http

注意:此命令成功安装http模块后重新启动服务器。


0
投票

如果有人为

"error TS2306"
苦苦挣扎,基本上在Angular7中,不需要声明你的服务,只需将其导入到组件中即可。

 - Service-A.ts
 - Component-A.ts
 - Module-A.ts // don't need to declare or export Service-A.ts here. 

但如果您使用 http

 与数据交互,则必须导入 
HttpClientModule

我已将 HttpClientModule 导入到模块中,错误消失了。


0
投票

我也有类似的问题。我的错误是:

ERROR in src/app/app-routing.module.ts:19:34 - error TS2304: Cannot find name 'CheckoutComponent'.

19   { path: 'checkout', component: CheckoutComponent},

我认为它没有识别我刚刚添加的新组件。出现刷新问题。

注释掉行 { path: ... , 运行 ngserve,然后再次取消注释该行并再次运行 ngserve 有助于消除该消息。


0
投票

如果您刚刚创建应用程序并且您是 Angular 新手,请确保首先检查您的应用程序文件夹是否存在此文件:app-routing.module.ts

如果没有,请复制以下命令并运行:

ng generate module app-routing --flat --module=app

您可能会看到一些错误,但通过搜索谷歌和堆栈溢出很容易解决它们。


0
投票

在 TransformPluginContext._formatError (文件:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:49242:41) 在 TransformPluginContext.error (文件:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:49237:16) 在normalizeUrl(文件:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:64033:23) 在异步评估(file:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:64165:39) 在 async TransformPluginContext.transform (file:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:64092:7) 在 async PluginContainer.transform (file:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:49083:18) 在异步 loadAndTransform (file:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:51916:27) 在 async viteTransformMiddleware (file:///home/project/node_modules/vite/dist/node/chunks/dep-CDnG8rE7.js:61873:24

© www.soinside.com 2019 - 2024. All rights reserved.