为 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
当您更改应用程序结构添加/删除/移动组件并继续使用热重载时,有时会出现此类错误
error TS2307: Cannot find module
。在这种情况下,您可以尝试停止服务 (CTRL+C) 并重新启动它 (ng-serve)。
检查 Angular CLI 引用的所有模块是否都存在。
此外,此错误(错误 TS2551:“订阅”类型上不存在属性“订阅”)与 Angular CLI 无关,您显然只是尝试在返回订阅的内容上调用
.subscribe
(即已经称为 .subscribe
)。
在终端中我已执行此命令并安装了 http 模块。
npm install --save @angular/http
注意:此命令成功安装http模块后重新启动服务器。
如果有人为
"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 导入到模块中,错误消失了。
我也有类似的问题。我的错误是:
ERROR in src/app/app-routing.module.ts:19:34 - error TS2304: Cannot find name 'CheckoutComponent'.
19 { path: 'checkout', component: CheckoutComponent},
我认为它没有识别我刚刚添加的新组件。出现刷新问题。
注释掉行 { path: ... , 运行 ngserve,然后再次取消注释该行并再次运行 ngserve 有助于消除该消息。
如果您刚刚创建应用程序并且您是 Angular 新手,请确保首先检查您的应用程序文件夹是否存在此文件:app-routing.module.ts
如果没有,请复制以下命令并运行:
ng generate module app-routing --flat --module=app
您可能会看到一些错误,但通过搜索谷歌和堆栈溢出很容易解决它们。
在 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