Vue.js с Pre-render SPA создает двойные теги сценариев - PullRequest
0 голосов
/ 01 июля 2018

Я создаю дружественный к SEO сайт, используя Vue.js, поэтому я использую Плагин предварительного рендеринга SPA .

Когда я npm run build и Vue.js, и плагин Pre-render SPA оба монтируют версию тегов сценария в <head> каждой страницы, и поэтому они дублируются.

Я попробовал следующее в vue.config.js:

new preRender({
          staticDir: path.join(__dirname, 'dist'),
          routes: ['/', '/page-1', '/page-2'],
          postProcess(renderedRoute) {

            renderedRoute.html = renderedRoute.html.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/ig,'');

            return renderedRoute;
          }
        })

Но это полностью удаляет все теги скриптов. Так что не идеально. Я пробовал авторов плагинов, но они говорят, что это именно то, как плагин должен работать, и опять же он не идеален, так как вызывает конфликты с такими сервисами, как Google Analytics, Hotjar, Sentry и т. Д.

Если у кого-нибудь есть опыт работы с Vue или плагином, есть идеи?

...