larisamoroz
@larisamoroz
Курю маны, втыкаю в код, ваяю, починяю.

Как запустить приложение vue.js внутри скрипта в tampermonkey?

Не получается запустить vue.js приложение, скомпилированное через webpack (стандартными средствами vue) в скрипте tampermonkey.

В самом user script-е подгружается только loder.js, который уже загружает chunk-vendors.js и app.js через fetch и выполняет с помощью (new Function(data))();
Скрипты скачиваются, тексты скриптов в консоли вижу, т.е., они успешно загружаются и выполняются.
Если в app.js сделать console.log, он выполняется.

Но в итоге получаю ошибку — Vue is not defined.
window.Vue и window.vue тоже undefined.

Чего делать? Куда смотреть?

З.Ы.: Через внедрение скрипта посредством создания элемента script не получится, так как на целевом сайте сторонние скрипты заблокированы.
  • Вопрос задан
  • 241 просмотр
Решения вопроса 1
larisamoroz
@larisamoroz Автор вопроса
Курю маны, втыкаю в код, ваяю, починяю.
В общем, вопрос решился путём изменения настроек Webpack-а, для него надо было в раздел optimization добавить опцию
sideEffects: false для prduction.

И всё заработало, хоть через eval, хоть через подключение скрипта, хоть через внедрение кода скриптов в код страницы.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
profesor08
@profesor08
import Vue from "vue";

new Vue(...)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы