QingWei-Li / vue-markdown-loader

📇 Convert Markdown file to Vue2.0 component.
704 stars 161 forks source link

[Prod] Cannot read property '__vueMarkdownOptions__' of undefined #53

Closed chiaweilee closed 5 years ago

chiaweilee commented 5 years ago

in prod

"vue": "^2.5.17" "vue-markdown-loader": "^2.4.1" "vue-template-compiler": "^2.5.17" "@vue/cli-service": "^3.0.5"

Module build failed (from ./node_modules/_thread-loader@1.2.0@thread-loader/dist/cjs.js):
Thread Loader (Worker 1)
Cannot read property '__vueMarkdownOptions__' of undefined

    at Object.module.exports (/Users/jv/Desktop/project/vue-markdown-docs/node_modules/_vue-markdown-loader@2.4.1@vue-markdown-loader/lib/markdown-compiler.js:71:46)

markdown-compiler.js

module.exports = function(source) {
  console.log('\r\n--- start ---')
  console.log(source)
  this.cacheable && this.cacheable();
  var parser, preprocess;
  var params = loaderUtils.getOptions(this) || {};
  if (!this._compilation) {
    console.log('\r\n--- undefined ---')
  } else {
    console.log('\r\n--- not undefined ---')
  }
  var vueMarkdownOptions = this._compilation.__vueMarkdownOptions__;
  var opts = vueMarkdownOptions ? Object.create(vueMarkdownOptions.__proto__) : {}; // inherit prototype
  var preventExtract = false;

result of dev mode

 INFO  Starting development server...
 27% building modules 148/152 modules 4 active ...7@core-js/modules/_to-absolute-index.js
--- start ---
## test

--- not undefined ---
 28% building modules 154/157 modules 3 active ...onents/test.md?vue&type=script&lang=js&
--- start ---
## test

--- not undefined ---
 28% building modules 155/157 modules 2 active ...onents/test.md?vue&type=script&lang=js&
--- start ---
## test

result of prod

⠙  Building for production...
--- start ---
## test

--- not undefined ---

--- start ---
## test

--- not undefined ---
⠸  Building for production...
--- start ---
## test

--- undefined ---
⠴  Building for production...

 ERROR  Failed to compile with 1 errors                                                                                                                                            10:27:47

Module build failed (from ./node_modules/_thread-loader@1.2.0@thread-loader/dist/cjs.js):
Thread Loader (Worker 1)
Cannot read property '__vueMarkdownOptions__' of undefined

    at Object.module.exports (/Users/jv/Desktop/project/vue-markdown-docs/node_modules/_vue-markdown-loader@2.4.1@vue-markdown-loader/lib/markdown-compiler.js:74:46)
chiaweilee commented 5 years ago
webpackConfig.module
      .rule('md')
      .test(/\.md$/)
      .use('vue-loader')
      .loader('vue-loader')
      .end()
      .use('vue-markdown-loader')
      .loader('vue-markdown-loader/lib/markdown-compiler')
      .options(require('../../../src/core/loader-option'))
ideaspace commented 5 years ago

@chiaweilee 这个bug怎么修正

yolinsoft commented 5 years ago

Set parallel: false in vue.config.js

module.exports = { parallel: false }

cloudMokie commented 4 years ago

这个问题解决了吗

Gilbert5210 commented 2 years ago

同问,这个怎么解决啊? 前面说的只是vue-cli搭建项目的解决方案。 非这个脚手架的呢??

cloudMokie commented 2 years ago

这是来自QQ邮箱的假期自动回复邮件。   您好,我最近正在休假中,无法亲自回复您的邮件。我将在假期结束后,尽快给您回复。