Сайт VuePress, сгенерированный `vuepress build`, не вызывает перехваты` mount () `при использовании опции` --debug` (отлично работает с `vuepress dev`) - PullRequest
0 голосов
/ 24 января 2020

РЕДАКТИРОВАТЬ: я изначально думал, что пользовательская тема вызывает ошибку; Я перефразировал вопрос потом. Демонстрация в реальном времени также исправлена.

Я создал собственную тему для VuePress, которая расширяет @vuepress/theme-default для добавления некоторых новых Vue компонентов. Все отлично работает, когда я использую vuepress dev. Однако, когда я создаю сайт с использованием vuepress build, не подключается никакой прослушиватель событий, поэтому, например, меню не открывается при нажатии кнопки.

исходный код можно найти на github.

A живая демонстрация также доступна там: Вы можете просмотреть кнопку меню там (на #app > div.theme-container.sections-layout > header > div.sidebar-button) - и сравнить ее с один в https://vuepress.vuejs.org/.

Кажется, проблема в том, что хуки mounted не выполняются в версии, созданной build. Однако в документах говорится, что доступ к браузеру API должен происходить в beforeMount или mounted хуках. Так что это звучит так, что это место для использования.

Любое предложение?

Я использую VuePrss cli.js / 1.2.0 win32-x64 node-v12.13.0

1 Ответ

0 голосов
/ 25 января 2020

Хорошо, проблема была вызвана не пользовательским шаблоном, а использованием опции --debug вместе с vuepress build. Это, очевидно, вызывает ошибки.

Что ж, если вы внимательно прочитаете документацию CLI VuePress , вы можете заметить, что эта опция предназначена только для сервера разработки ...

...