Я "перевожу" сайт своих проектов на Vue.js с Nuxt.js сверху.Я копирую содержимое всех файлов, хранящихся на удаленном сервере, в локальную «статическую» папку.
Все работает нормально, кроме JavaScript, который запускается при первой загрузке страницы, ноесли я переключусь на другую страницу через маршруты или обновлю текущую страницу, JavaScript перестанет работать.
Например, на моем сайте проектов есть эта страница: http://archy -user.name /drag /
Где вы можете в основном перетаскивать изображение в другие блоки с изменениями классов при наведении курсора на любой блок с изображением.
Я скопировал CSS в локальную статическую областьпапка работает нормально, копируется через JavaScript, работает только один раз и перестает работать после изменения маршрута / обновления страницы ...
Работает так же, как веб-сайт при первой загрузке страницы, но после перезагрузки /при изменении маршрута скрипт просто перестает работать, и при наведении курсора на прямоугольники и т. д. не происходит никаких изменений класса, хотя и работает нормально при первом запуске страницы.ded.
Вчера при исследовании этого вопроса в ответах на связанные вопросы говорилось, что это произошло потому, что сценарий запускается только один раз при загрузке страницы, поэтому при изменении маршрута или обновлении страницы сценарийбольше не запускается.
Некоторые предлагали добавить функцию, которая должна выполняться при загрузке страницы, в метод "create ()" внутри "export default" в компоненте vue.
Однако, в моем случае, у меня нет чего-то, что я на самом деле хочу выполнять каждый раз, когда страница загружается, скорее, я хочу выполнить только определенную часть скрипта, которая будет специфическими функциями, запускаемыми только тогда, когда определенные действиявыполняется пользователем на странице посредством взаимодействий ...
Загрузка сценария каждый раз не будет необходимой, поскольку взаимодействия могут даже не происходить, что делает сценарий бесполезным, а также время загрузки.Не говоря уже о том беспорядке, которым стал бы компонент, если бы я добавил весь сценарий к методу «create».
По сути, я не нашел реального решения этой проблемы, только обходные пути, которые вызывают побочные действия.эффекты ...
Вот как структурированы мои компоненты (ниже компонент от http://archy -user.name / drag ):
<template>
<div class="container">
<div class="box">
<div class="fill" draggable="true"></div>
</div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
</div>
</template>
<script>
export default {
name: 'Drag',
head: {
link: [ { rel: 'stylesheet', type: 'text/css', href: 'css/drag.css'} ],
script: [ { src: 'js/drag.js' } ]
}
}
</script>
<style>
</style>
Любые советы поисправить эту проблему?Или обходные пути для моей ситуации?
PS - Каждый раз, когда я закрываю вкладку и открываю новую, сценарии работают снова, пока страница не обновится / маршрут не изменится