无法在构建时从shared.module.ts导出MaterialModule [英] unable to export MaterialModule from shared.module.ts on Build time

查看:90
本文介绍了无法在构建时从shared.module.ts导出MaterialModule的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

它正在 ng serve 上运行,但给出以下错误

It's working on ng serve but giving error as follow

ERROR in Unexpected value 'MaterialModule in E:/Code/employee-web/node_modules/@angular/material/typings/index.d.ts'

重要 由模块"E:/Code/employee-web/src/app/shared/shared.module.ts中的SharedModule"设置.请添加一个 @NgModule注释 . ./src/main.ts中的错误 找不到模块:错误:无法解析"E:\ Code \ employee-web \ src"中的"./$$_gendir/app/app.app.module.ngfactory" 在'E:\ Code \ employee-web \ src'中解析'./$$_gendir/app/app.module.ngfactory' 使用描述文件:E:\ Code \ employee-web \ package.json(相对路径:./src) 字段浏览器"不包含有效的别名配置 使用描述文件后:E:\ Code \ employee-web \ package.json(相对路径:./src) 使用描述文件:E:\ Code \ employee-web \ package.json(相对路径:./src/$$_gendir/app/app.app.module.ngfactory) 没有扩展 字段浏览器"不包含有效的别名配置 E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory不会 存在 .ts 字段浏览器"不包含有效的别名配置 E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory.ts不会 存在 .js 字段浏览器"不包含有效的别名配置 E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory.js没有 存在 作为目录 E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory不会 存在 [E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory] [E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory.ts] [E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory.js] [E:\ Code \ employee-web \ src \ $$ _ gendir \ app \ app.module.ngfactory] @ ./src/main.ts 3:0-74 @ multi ./src/main.ts

impor ted by the module 'SharedModule in E:/Code/employee-web/src/app/shared/shared.module.ts'. Please add a @NgModule annotatio n. ERROR in ./src/main.ts Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in 'E:\Code\employee-web\src' resolve './$$_gendir/app/app.module.ngfactory' in 'E:\Code\employee-web\src' using description file: E:\Code\employee-web\package.json (relative path: ./src) Field 'browser' doesn't contain a valid alias configuration after using description file: E:\Code\employee-web\package.json (relative path: ./src) using description file: E:\Code\employee-web\package.json (relative path: ./src/$$_gendir/app/app.module.ngfactory) no extension Field 'browser' doesn't contain a valid alias configuration E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory doesn't exist .ts Field 'browser' doesn't contain a valid alias configuration E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory.ts doesn't exist .js Field 'browser' doesn't contain a valid alias configuration E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory.js doesn't exist as directory E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory doesn't exist [E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory] [E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory.ts] [E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory.js] [E:\Code\employee-web\src\$$_gendir\app\app.module.ngfactory] @ ./src/main.ts 3:0-74 @ multi ./src/main.ts

任何人都可以调查吗?

这是sharedModule

here is sharedModule

> @NgModule({
> 
>   declarations: [],   providers: [
>        ],   imports: [
>     HttpModule,
>     MaterialModule,
>        ],   exports: [
>     CommonModule,
>         //matrial MOdule
>     // MdTooltipModule,
>     // MdTabsModule,
>     // MdSlideToggleModule,
>     // MdIconModule,
>     // MdDialogModule,
>     // MdButtonModule,
>     // MdListModule,
>     // MdCardModule,
>     // MdToolbarModule,
>     // MdProgressSpinnerModule,
>     // MdProgressBarModule,
>     MaterialModule,
> 
> 
>       ] }) export class SharedModule { }

推荐答案

您可能已执行以下操作:

You've likely done the following:

import {MaterialModule} from "@angular/material";

@NgModule({
   declarations: [],
   providers: [],
   imports: [
     HttpModule,
     MaterialModule,
   ],
   exports: [
     CommonModule,
     MaterialModule,
   ]
})
export class SharedModule {}

但是,MaterialModule已经过时了一段时间(我不记得确切的版本).现在建议您分别导入组件模块: https://material.angular.io/guide/getting-started#step-3-import-the-component-modules

However, the MaterialModule has been deprecated for a while now (I don't remember what version exactly). It is now recommended you import the component modules individually: https://material.angular.io/guide/getting-started#step-3-import-the-component-modules

所以请更改为以下内容:

So change to something like the following:

// Import whatever components you intend to use in this shared module here
import {MdButtonModule, MdCheckboxModule} from '@angular/material';

@NgModule({
   ...
   imports: [MdButtonModule, MdCheckboxModule],
   exports: [MdButtonModule, MdCheckboxModule],
   ...
})
export class SharedModule {}

您可以通过导入每个可用的单个组件模块,然后从共享模块中导出它们来模拟MaterialModule功能(厨房水槽).

You can emulate the MaterialModule functionality (the kitchen sink) by importing every single component module available, and then exporting them from your shared module.

这篇关于无法在构建时从shared.module.ts导出MaterialModule的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆