Ionic 3 ожидает некоторый файл исходной карты для файла precache-manifest с помощью Workbox - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь использовать рабочий ящик в своем приложении Ionic 3. Что я сделал, так это добавил плагин InjectManifest к конфигам dev и prod WebPack в Ionic AppScripts, но при выполнении процесса сборки Ionic походит на ожидание файла исходной карты, который не генерируется плагином Workbox, поэтому я получаю следующееошибка.

Error: ENOENT: no such file or directory, open 
            '/Users/cristian/App/www/build/precache-manifest.99a3c24b1cf309d6c2afc8e795f628d8.js.map'
            in undefined at line undefined, col undefined, pos undefined 
Error: ENOENT: no such file or directory, open '/Users/cristian/App/www/build/precache-manifest.99a3c24b1cf309d6c2afc8e795f628d8.js.map' in undefined at line undefined, col undefined, pos undefined
    at new BuildError (/Users/cristian/App/node_modules/@ionic/app-scripts/dist/util/errors.js:16:28)
    at taskReject (/Users/cristian/App/node_modules/@ionic/app-scripts/dist/worker-process.js:36:22)
    at /Users/cristian/App/node_modules/@ionic/app-scripts/dist/worker-process.js:14:13
    at <anonymous>
Error

at new SubprocessError (/Users/cristian/.config/yarn/global/node_modules/@ionic/utils-subprocess/dist/index.js:40:23)
at ChildProcess.p.on (/Users/cristian/.config/yarn/global/node_modules/@ionic/utils-subprocess/dist/index.js:124:27)
at emitTwo (events.js:126:13)
at ChildProcess.emit (events.js:214:7)
at maybeClose (internal/child_process.js:915:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)

Конфигурация плагина Workbox находится здесь.

const WorkboxPlugin = require('workbox-webpack-plugin');
const { dev, prod } = require('@ionic/app-scripts/config/webpack.config');

const plugin = new WorkboxPlugin.InjectManifest({
    importWorkboxFrom: 'disabled',
    globDirectory: 'www',
    globPatterns: [
        'assets/fonts/*',
        'build/**/*',
        'index.html',
        'manifest.json'
    ],
    swSrc: 'src/service-worker.js',
    swDest: '../service-worker.js',
})

dev.plugins.push(plugin);
prod.plugins.push(plugin);

precache-manifest.[hash].js генерируется правильно и внедряется в рабочий файл службы, но процесс сборки Ionic продолжает вызывать ошибкуиз-за этого отсутствующего файла .map.

Есть предложения? Я искал какой-нибудь способ создания исходной карты для файла precache-manifest, но я ничего не нашел.

Заранее спасибо

...