首页 文章

Angular 2多个模块,名称仅在外壳上有所不同

提问于
浏览
9

编译期间出现以下警告:

./src/app/state/actions/userClass.ts中的警告有多个模块的名称只有外壳不同 . 在使用其他case-semantic编译文件系统时,这可能会导致意外行为 . 使用相同的套管 . 比较这些模块标识符:* /Users/smp/Projects/training3/node_modules/@angularclass/hmr-loader/index.js!/Users/smp/Projects/training3/node_modules/awesome-typescript-loader/dist/entry.js ?{configFileName:“tsconfig.webpack.json”}!/ Users / smp / Projects / training3 / node_modules / angular2-template-loader / index.js!/ Users / smp / Projects / training3 / node_modules / angular-router-loader /src/index.js?loader=system&genDir=compiled&aot=false!/Users/smp/Projects/training3/src/app/state/actions/UserClass.ts由1个模块使用,i . 即/Users/smp/Projects/training3/node_modules/@angularclass/hmr-loader/index.js!/Users/smp/Projects/training3/node_modules/awesome-typescript-loader/dist/entry.js?{configFileName:"tsconfig .webpack.json“}!/用户/ SMP /项目/ training3 / node_modules / angular2模板装载机/ index.js!/Users/smp/Projects/training3/node_modules/angular-router-loader/src/index.js ?loader = system&genDir = compiled&aot = false!/Users/smp/Projects/training3/src/app/features/portal/content/tabs/userclasses/userclasses.component.ts * / Users / smp / Projects / training3 / node_modules / @ angularclass / hmr-loader / index.js!/Users/smp/Projects/training3/node_modules/awesome-typescript-loader/dist/entry.js?{configFileName:“tsconfig.webpack.json”}!/ Users / smp /项目/ training3 / node_modules / angular2模板装载机/ index.js!/Users/smp/Projects/training3/node_modules/angular-router-loader/src/index.js?装载机=系统及genDir =编译和AOT =假!/用户/ smp / Projects / training3 / src / app / state / actions / userClass.ts由3个模块使用,i . 即/Users/smp/Projects/training3/node_modules/@angularclass/hmr-loader/index.js!/Users/smp/Projects/training3/node_modules/awesome-typescript-loader/dist/entry.js?{configFileName:"tsconfig .webpack.json“}!/用户/ SMP /项目/ training3 / node_modules / angular2模板装载机/ index.js!/Users/smp/Projects/training3/node_modules/angular-router-loader/src/index.js ?装载机=系统及genDir =编译和AOT =假的!/Users/smp/Projects/training3/src/app/state/effects/userClass.ts

5 回答

  • 4

    我的文件名称很好 . 此问题突然出现,因为在我的一个导入中,我将UserClass大写:

    import * as userClassActions from '../../../../../state/actions/UserClass';
    

    将导入更改为以下后,错误消失了:

    import * as userClassActions from '../../../../../state/actions/userClass';
    
  • 0

    由于我在编写导入时犯了一个错误,我得到了同样的错误 .

    检查你是否写过某个地方 - > import from '@angular/Router';

    现在,将其更改为 - > import from '@angular/router';

    这解决了我的问题 . 希望它也适合你 .

    请参阅下面的图像以获得更清晰

  • 0

    我在使用asp.net core 2.0和web pack实现angular 4 App时遇到了这个问题 .

    如果您导入具有两个不同的“./”或“../”相对路径表示法的服务或类,则会发生此问题 .

    在NavMenuComponent中导入代码 .

    import { SampleService } from '../../services/sample.service';
    

    使用以下代码更改错误已解决

    import { SampleService } from './../../services/sample.service';
    

    Learn more about GitHub discussion

  • 0

    检查您是否已导入两次 .

  • 34

    这也可能是由webpack配置中的条目引起的:

    const path = require('path');
    const webpack = require('webpack');
    
    module.exports = {
      mode: 'development'
      , entry: {
        crm: './Scripts/app/crm/crm.router.js'
        , labels: './Scripts/app/labels/labels.router.js'
        , admin: './scripts/app/crm/admin/admin.router.js'
      }
      , output: {
        filename: '[name]Bundle.js'
        , path: path.resolve(__dirname, 'dist')
      }
    ///...
    };
    

    请注意输入部分中 scriptsScripts 的大小写 .

相关问题