Пытаюсь понять, как использовать функцию JQuery в методе vuejs. Я пытаюсь использовать функцию fadeOut (), но это не работает, потому что я думаю, что мне нужно использовать объект jquery. Я что-то пробовал, но это не работает. Есть идеи, как это сделать, и это возможно?
<script>
const app = new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
},
mounted() {
},
methods: {
removeParticipant(participant_id) {
axios.post('/api/tournament/removeParticipant', {
tourn_id: {{ $tournament->id }},
participant_id: participant_id
})
.then((response) => {
if (response.data == 'ok') {
$ele = window.$(this);
$ele.fadeOut().remove();
alert($ele);
}
})
.catch(function(error) {
console.info(error);
})
}
}
});
Обычно вы не хотите запускать код, существующий за пределами Vue, потому что логика обнаружения изменений Vue теряет контекст того, что происходит, и стирает то, что jQuery делает / делает.
Вам совершенно не следует смешивать Vue и jQuery, вы просто хотите удалить что-то onclick. установите для свойства данных значение false onclick и элемент, который вы хотите скрыть, используйте v-if = "dataproperty"



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы хотите удалить div с идентификатором #app?, Если да, попробуйте использовать этот код. после инициализации vue получите элемент и сохраните его в такой переменной:
const app = new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
},
mounted() {
},
methods: {
removeParticipant(participant_id) {
axios.post('/api/tournament/removeParticipant', {
tourn_id: {{ $tournament->id }},
participant_id: participant_id
})
.then((response) => {
if (response.data == 'ok') {
//$ele = window.$(this); ///////comment this section
$ele.fadeOut().remove();
alert($ele);
}
})
.catch(function(error) {
console.info(error);
})
}
}
});
var $ele = $('#app');//////////////declare your variable after vue initialization
Нет, я хочу использовать это, чтобы увидеть, какая кнопка была нажата, вызвала эту функцию, а затем просто удалила div из html с помощью jquery.
Вот руководство о том, как включить jQuery в проект Vue. Я читал, что это не рекомендуется, но это можно сделать. maketips.net/tip/223/how-to-include-jquery-into-vuejs Сообщите мне, работает ли это.