MathJax также не работает с Vuejs $ router.push - PullRequest
0 голосов
/ 12 апреля 2019

Я пытаюсь использовать MathJax с Vuejs.

Работает нормально, когда я просто открываю страницу или перезагружаю страницу. Однако он перестает работать, когда я делаю метод $ router.push для перенаправления на другую страницу. В этом случае формула не отображается с MathJax. Я использую vue-plugin-load-script для внедрения библиотеки MathJax.

Я установил vue-plugin-load-scrip:

 npm install --save vue-plugin-load-scrip

Затем я импортировал его в Main.js

import LoadScript from 'vue-plugin-load-script'
Vue.use(LoadScript)

А вот что я сделал в своей созданной () странице:

this.$loadScript("https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-MML-AM_CHTML")
    .then(() => {
      // get my data with Parse Server
      that.text = object.get("text")
    })
    .catch(() => {
      // alert for error
    });

на предыдущей странице я использовал это, чтобы открыть новую страницу:

this.$router.push({ name: 'quizPage', params: {quizId} })

Я полагаю, что это какая-то гоночная проблема, но не могу найти решение

Большое спасибо за любую помощь! Джош

1 Ответ

0 голосов
/ 12 апреля 2019

Проблема в том, что MathJax рендерится при загрузке страницы. Vue действительно не работает таким образом. К счастью, добрый незнакомец нашел время, чтобы создать vue плагин для его поддержки.

Вот пример того, как это работает.

...