鍍金池/ 問答/HTML/ webpack,創(chuàng)建一個 library失???

webpack,創(chuàng)建一個 library失???

用webpack打包,創(chuàng)建一個 library失敗了,入口文件如下:

export default {
    dialog,
    alert,
    confirm,
    toast,
    loading,
    actionSheet,
    topTips,
    searchBar,
    tab,
    form,
    uploader,
    picker,
    datePicker,
    gallery,
    slider,
    step,
    accordion,
    stepper,
    tabs,
    popover
};

然后webpack配置文件為:

entry: './src/js/mtui.js',
  output: {
    path: path.resolve(__dirname, './dist'),
    publicPath: './js/',
    filename: 'mtui.min.js',
    library: 'mtui',
    libraryTarget: 'umd',
  },
  externals: {
    lodash: {
      commonjs: 'lodash',
      commonjs2: 'lodash',
      amd: 'lodash',
      root: '_'
    }
  },

打包時并沒有報錯,打包出來后
我如下調(diào)用時:

import mtui from './uilts/mtui.min'

則報錯:

"export 'default' (imported as 'mtui') was not found in './uilts/mtui.min'

然后如果我換種調(diào)用方式:

const mtui = require('./uilts/mtui.min')

控制臺打印出來的卻只有一下內(nèi)容,我原來導出的對象并沒有

clipboard.png

請問一下大家,這是為什么?怎么解決?

回答
編輯回答
使勁操
  1. 你用這個配置試試

    libraryExport: 'default' // webpack3加的配置

    但是這么著好像就不能用umd方案了

  2. 或者用module.exports導出,但是這樣就不能用webpack3的 Scope Hoisting特性了(只支持es module),本來就沒用的話無所謂。

感興趣的話可以看看這個

2018年1月27日 22:05