试图让Prerender SPA插件在Vue.js CLI 3上运行

时间:2018-05-01 21:04:53

标签: javascript webpack vue.js vuejs2 prerender

尝试构建时出现以下错误:

Building for production...Error: ENOENT: no such file or directory, stat '/Users/me/Code/project/index.html'

套餐:"prerender-spa-plugin": "^3.1.0"

档案:vue.config.js

const PrerenderSPAPlugin = require('prerender-spa-plugin');

const Renderer = PrerenderSPAPlugin.PuppeteerRenderer;
const path = require('path');

module.exports = {
  configureWebpack: config => {
    if (process.env.NODE_ENV !== 'production') return;

    return {
      plugins: [
        new PrerenderSPAPlugin({
          staticDir: path.join(__dirname),
          routes: ['/'],
          minify: {
            collapseBooleanAttributes: true,
            collapseWhitespace: true,
            decodeEntities: true,
            keepClosingSlash: true,
            sortAttributes: true,
          },
          renderer: new Renderer({
            renderAfterDocumentEvent: 'render-event',
          }),
        }),
      ],
    };
  },
};

我没有任何路线,只有一个index.html页面。

此外,当我运行yarn build并获得该错误时,我尝试终止终端中的进程,但它一直返回Building for production...而没有发生任何事情,我必须退出终端才能停止。

编辑:我也尝试添加staticDir: path.join(__dirname, './public'),但构建会挂起而没有任何错误。

1 个答案:

答案 0 :(得分:0)

尝试在渲染器选项中添加无头:false。这将打开具有您指定的路由数组的Chromium浏览器。在Chromium浏览器中打开检查器,很有可能您会在控制台中看到错误。