Получение «typeerror: 'имя функции' не является функцией» после сборки участка

Я пытаюсь связать свою библиотеку npm с Parcel. Вот игрушечная версия моего кода для простоты.

структура каталогов

- dist
 - demo.js
 - demo.map
- src
 - lib
  - lib1.js
 - demo.js
- run.js

demo.js

const {lib1} = require('./lib/lib1')

module.exports = {
  lib1: lib1
}

lib / lib1.js

exports.lib1 = function() {
  return 'hi'
}

run.js

const {lib1} = require('./dist/demo')
console.log(lib1())

Вот команда сборки, которая генерирует dist/demo.js и dist/demo.map.

parcel build src/demo.js -d dist

Но если я запустил run.js, он выдаст следующую ошибку:

console.log(lib1())
            ^

TypeError: lib1 is not a function
    at Object.<anonymous> (/Users/user/sample/run.js:5:13)
    at Module._compile (module.js:649:30)
    at Object.Module._extensions..js (module.js:660:10)
    at Module.load (module.js:561:32)
    at tryModuleLoad (module.js:501:12)
    at Function.Module._load (module.js:493:3)
    at Function.Module.runMain (module.js:690:10)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:666:3

Что мне не хватает?

Я думаю, что входной файл должен быть run.js вместо demo.js

osk2 23.10.2018 11:13
1
1
353
0

Другие вопросы по теме