на второй возникает ошибка, что я делаю не так?
как лучше реализовать, чтобы замена символа происходила в том же окне
<textarea v-model="input"></textarea>data: () => ({
input: '',
}),
watch: {
input(v) {
this.input = v.split('1').join('2');
},
},<textarea v-model="input" @input="onInput"></textarea>data: () => ({
input: '',
}),
methods: {
onInput() {
this.input = this.input.split('1').join('2');
},
},
Все делал по этой документации...
<section v-if="show" transition="fade"></section><transition name="fade">
<section v-if="show"></section>
</transition>transition(name="fade")
section(v-if="show")
В таблице MySQL есть поле recdate типа DATE.
<td>{{ tran.recdater }} </td>v-for по нему:data: () => ({
columns: [
{ key: 'recdate', label: 'Date' },
{ key: 'refnum', label: 'Refnum' },
{ key: 'client', label: 'Client' },
{ key: 'details', label: 'Details' },
{ key: 'amount', label: 'Amount' },
{ key: 'cur', label: 'CUR' },
],
...
}),<thead>
<tr>
<th v-for="col in columns">{{ col.label }}</th>
</tr>
</thead>
<tbody>
<tr v-for="row in trans">
<th v-for="col in columns">{{ row[col.key] }}</th>
</tr>
</tbody>
const fs = require('fs');
let ID = 0;
const clients = {};
new (require('ws').Server)({
port: 8081,
}).on('connection', ws => {
const id = ++ID;
clients[id] = ws;
ws.on('close', () => {
delete clients[id];
});
});
fs.watch('./', (eventType, filename) => {
if (/\.json$/.test(filename)) {
fs.readFile(filename, 'utf8', (err, data) => {
if (!err && data) {
const info = JSON.stringify({
filename,
data: JSON.parse(data),
});
Object.values(clients).forEach(n => n.send(info));
}
});
}
});<div id="app">
<div v-for="(data, name) in files">
<div>{{ name }}</div>
<div>{{ data }}</div>
</div>
</div>new Vue({
el: '#app',
data: {
socket: null,
files: {},
},
created() {
this.socket = new WebSocket('ws://localhost:8081');
this.socket.onmessage = e => {
const f = JSON.parse(e.data);
this.$set(this.files, f.filename, f.data);
};
},
});
$refs.cpt.filter. Типа так.$refs - можно оформить в хранилище геттер, представляющий отфильтрованные данные, и создавать элементы для isotope'а на их основе. Как это может выглядеть.
.news-popup__content__close, генерируется событие click, оно обрабатывается - выполняется emit, генерируется событие close, оно обрабатывается в соответствующем обработчике, popup убирается. При этом событие click никуда не делось, оно всплывает, и в .news-block обрабатывается ещё раз - только что удалённый popup снова рендерится. Ну а внешне это всё выглядит так, будто ничего и не произошло.<div class="news-popup__content__close" @click="$emit('close')"></div><div class="news-popup__content__close" @click.stop="$emit('close')"></div>.news-block у вас отдельный popup, что за дичь-то такая?
Но ведь this.$refs.cpt это объект а не массив.
пытаюсь остановить выполнение функции
data: () => ({
intervalID: null,
}),
methods: {
mouseEnter() {
this.intervalID = setInterval(() => {
console.log('тик');
}, 500);
},
mouseLeave() {
clearInterval(this.intervalID);
this.intervalID = null;
},
},
почему при закрытии через метод Close - окно потом не открывается?!?!
this.show = false;show: { required: true, type: Boolean, twoWay: false }
Как сделать, чтоб метод из watch отрабатывал только при изменении полей пользователем?
if (this.articleArray.indexOf(data) === -1) { this.articleArray.push(data)
всё равно добавляется
if (!this.articleArray.some(n => n.id === data.id)) {
...computed: {
articleIds() {
return new Set(this.articleArray.map(n => n.id));
},
...if (!this.articleIds.has(data.id)) {
...