Включение модуля с зависимостями в качестве точки входа в Webpack (Angular 2 Typescript)

Я настроил Webpack в своем проекте и в поле точки входа добавил полифиллы, файлы поставщиков и приложений. Но у меня есть еще один файл myComponent.js, в котором есть зависимости.

webpack.common.js

entry: 
    {
        'polyfills': './polyfills.ts',
        'vendor': './vendor.ts',
        'app': './src/main.ts',
        'components': './myComponent'
    },
resolve: 
    {
        extensions: ['', '.js', '.ts', '.d.ts']
    }

И вот файл компонента, который имеет зависимость--

myComponent.js

exports.EventDispatcher = require('./lib/EventDispatcher').EventDispatcher;

Теперь, когда я импортирую это из своего основного компонента...

app.component.ts

import {EventDispatcher} from 'components';

Теперь, когда я запускаю эту сборку npm run, она выдает следующую ошибку.

Модуль не найден: Ошибка: зависимость от точки входа не разрешена.

Любые предложения, где я ошибаюсь.


person Ruchila Baruah    schedule 13.06.2016    source источник


Ответы (1)


Вы не можете требовать точку входа, в данном случае components, как зависимость в webpack. Вы можете обойти это, указав компоненты в виде массива вот так:

entry: 
    {
        'polyfills': './polyfills.ts',
        'vendor': './vendor.ts',
        'app': './src/main.ts',
        'components': ['./myComponent']
    }
person shortdiv    schedule 15.08.2016
comment
Ха-ха. У меня были проблемы с этим сообщением об ошибке, и я никогда не мог понять это. Это очень маленькая деталь. У меня был другой проект, в котором не было ошибок, и в нем действительно был массив для ключа entry:. Большое спасибо! - person nbkhope; 04.02.2017