Я ввел 'core-js / modules / es.object.keys' в index.js, и в процессе упаковки запрашиваются неразрешенные зависимости. Упакованный файл не содержит метод keys, но вводится с помощью require, define. Если браузер не поддерживает эти два метода, вызов Object.keys сообщит об ошибке.
Итак, что я должен сделать, чтобы получить код полифилла для Object.key в файле результатов.
Файл My Index.js
import keys from 'core-js/modules/es.object.keys'
export { keys }
Это мой файл конфигурации накопительного пакета
{
input: 'src/index.js',
output: {
file: 'lib/index.js',
format: 'umd',
name: 'MtUtils'
},
plugins: [resolve(), commonjs()]
}
Упакованный результат
;(function(global, factory) {
typeof exports === 'object' && typeof module !== 'undefined'
? factory(exports, require('core-js/modules/es.object.keys'))
: typeof define === 'function' && define.amd
? define(['exports', 'core-js/modules/es.object.keys'], factory)
: ((global = global || self),
factory((global.MtUtils = {}), global.es_object_keys))
})(this, function(exports, es_object_keys) {
'use strict'
es_object_keys =
es_object_keys && es_object_keys.hasOwnProperty('default')
? es_object_keys['default']
: es_object_keys
exports.keys = es_object_keys
Object.defineProperty(exports, '__esModule', { value: true })
})
Я хочу, чтобы упакованный файл содержал код полифилла для ключей напрямую, а не вводился с помощью require или define. Последний код здесь - следующий код, поэтому Object.keys недоступен.
factory((global.MtUtils = {}), global.es_object_keys))