如何为Vue和Webpack注册全局lodash mixin

时间:2019-05-23 16:17:20

标签: javascript vue.js webpack lodash

我想要这个混蛋

_.mixin({
  memoizeDebounce: function (func, wait = 0, options = {}) {
    const mem = _.memoize(function () {
      return _.debounce(func, wait, options)
    }, options.resolver)
    return function () {
      mem.apply(this, arguments).apply(this, arguments)
    }
  }
})

要在我导入lodash的任何地方使用。我怎么做?我尝试在最初启动Vue的main.js中将其分配给我,但是mixin并没有将其分配给我想在其中使用的vuex商店。

__WEBPACK_IMPORTED_MODULE_12_lodash___default.a.memoizeDebounce is not a function

我该怎么做?

我正在使用vue-cli随附的webpack 3.12.0。

1 个答案:

答案 0 :(得分:1)

您很喜欢这样:

import * as _ from 'lodash';

const utilsMixin = {
  computed: {
    _: () => _,
  },
};

export default utilsMixin;

然后将其导入到您的文件中,如下所示:

Vue.mixin(utilsMixin);