Alexander
ну вообще да)
Alexander
я просто хз, как вариант)
xelnød
о, сработало
xelnød
офигеть
xelnød
колдунство
xelnød
спасибо)
Alexander
чудесно, не за что)
xelnød
а вот то, что я делаю в массиве…
xelnød
типа новые свойства докидываю путем создания нового массива и map
xelnød
я могу сделать так же, если у меня каждый элемент массива содержит свой массив, и там тоже нужно избавиться от editing?
Alexander
типа новые свойства докидываю путем создания нового массива и map
ты юзаешь map, потому что у тебя меняется структура? Почему не forEach?
xelnød
избавиться от editing? типа вообще свойство это удалить или что?)
я не против его юзать. но я хочу, чтобы в data поступал тот массив, который я буду получать с сервера
xelnød
на сервере хранить это свойство смысла мало
Alexander
на сервере хранить это свойство смысла мало
ну тогда и добавляй его в computed, как ты сейчас делаешь. Я просто не совсем понял вопрос)
Alexander
xelnød
да, отлично спасибо. последний вопрос на сегодня еще :)
xelnød
помимо editing там есть isResultGuessed, который тоже можно вычислять. но моя проблема в том, что когда я редактирую данные в форме, он сразу вычисляется и закрывает мне форму :)
Egor
Всем привет! Вопрос оффтопный: можно ли как-то в vs code подрубить рефакторинг импортов при перемещении/переименовании файлов? А то щас меняю имя компоненты или перемещаю в другой каталог и вручную все импорты меняю. Задалбывает. В webstorm этот момент очень удобно реализован
Alisher
Нельзя, в плане рефакторинга от уступает
Alisher
Может плагины какие то есть, но в самом code нету
Egor
Плагинов с ходу тоже не нашел. Ишью незакрытый на гите vs code есть, но, видимо, не реализовали еще
xelnød
господи, я кретин. можно же получить данные с сервера, их модифицировать и запихать себе в data который идет во vue
xelnød
правда, непонятно, как вызывать методы vue из js
Evgenii
Кто-нибудь может подсказать как кошерно в компоненте метод запускать через родителя. Например, компонент в methods содержит функцию, которая запускает анимацию и эту анимацию можно много раз выполнять. Сделал через refs в родителе. Еще была идея через event Bus. Но как по-другому, типо через пропсы не понимаю. Если пропс булеан, то емитить евент, что бы родитель переставил флаг как-то тупо.
Evgenii
Хочется как-то через пропсы 😭
Дмитрий
Сделай два пропса: show, hide, если уж хочется через них делать.
xelnød
мне нужны методы vue за пределами Vue(). поэтому я вынес их отдельно в глобальный скоуп. это нормальная практика? если да, зачем вообще методы vue нужны?
xelnød
для изоляции?
Armen
че
xelnød
ладно, у меня уже мозги поплыли видимо. nevermind pls
Дмитрий
Не очень понимаю как это поможет.
В родителе меняешь их состояние. В потомке в зависимости от состояния (watch) меняешь поведение.
Evgenii
Не это тоже зашквар какой-то, лучше уж одним флагом тогда и также через watch родителю прокинуть событие, чтобы он флаг обратно переключил. Что-то как-то часто такие ситуации возникают, а как нормально делать не понимаю
Andy
народ, есть два метода в mounted, 1-ый getCategories, который устанавливает категории this.categories = response.data и 2-ой getFilters, так вот, как во втором обратиться к this.categories? console.log(this.categories) в getFilters пустой
Andy
в store кидать?
Armen
Vanga mode | on
Armen
Вангую, что у тебя код выполняется раньше чем достаются категории
Andy
даже если так getFilters: function () { this.getCategories(); console.log(this.categories) }, то тоже пусто
Armen
Либо он у тебя где-то в не-стрелочной функции
Andy
getCategories: function () { axios.get('/api/categories', { }) .then(response => { this.categories = response.data; }) .catch(error => { //console.log(error); }); }, getFilters: function () { this.getCategories(); console.log(this.categories); }, getFilters в mounted
Armen
axios асинхронный
Armen
Понимаещь?
Armen
Т.е. у тебя в результате создаётся асинхронный запрос на получение данных из сервера
Armen
Запрос отправлен и код идёт дальше
Armen
Он не ждёт пока запрос закончится
Armen
Потому на момент console.log у тебя this.categories пустой
Armen
getCategories () { return axios.get('/api/categories') .then(response => { this.categories = response.data; }) .catch(error => { //console.log(error); }); }, getFilters () { this.getCategories() .then(() => { console.log(this.categories); }); },
Andy
за наводку про асинхронность thx
Armen
Ты return добавил в getCategories?
Andy
нет, я же валенок
Armen
Andy
спасибо!)
Anonymous
народ, есть два метода в mounted, 1-ый getCategories, который устанавливает категории this.categories = response.data и 2-ой getFilters, так вот, как во втором обратиться к this.categories? console.log(this.categories) в getFilters пустой
Создай геттер и напиши что-то типо if(store.categories.length) return store.categories Тогда ты получишь данные с стора, когда они уже появились Думаю, что можно ещё более лаконично решить, но пока так
Den
Ребят, удоволетворите наркомана плиз (меня). Можно ли использовать angular/react во vue компоненте или vue spa?
Den
Даже не спрашивайте, зачем
Armen
БЛин не успел
Den
Наркотики тяжелые просто, но проблема реально актуальная для меня сейчас.
Roman
Не это тоже зашквар какой-то, лучше уж одним флагом тогда и также через watch родителю прокинуть событие, чтобы он флаг обратно переключил. Что-то как-то часто такие ситуации возникают, а как нормально делать не понимаю
Сделать шину и прокинь ее в пропс. Пусть меня закидают помидорами :) а вообще может ты как-то можешь перенести анимацию в родителя? Тогда изращаться не придётся точно и будет самый норм вариант
Andy
Ты return добавил в getCategories?
слушай, так норм вообще делать (path.replace временно для dev, есть regex)? this.getCategories().then( () => { let categories = this.categories; let path = this.$route.path.replace('/vacancies','vacancies'); let pathLocations = path.split('/'); if (pathLocations[1]) { let location = pathLocations[1]; let category = categories.find(function(cat) { return cat.alias === location; }); console.log(category); } });
Armen
А что конкретно спрашивается?
Andy
ну это не совсем зашкварный код?
Armen
Ну есть немного
Armen
Что за ide не подскажешь?
Armen
Как тема называется?
Eugene
ну. мало что ли темных тем )
Dmitriy
Чем webstorm не устраивает?)
Armen
Atom
Как тема называется?
Ivan
Стандартная dark
Armen
Хмм, видимо я уже давно его не видел
heavycharged
друзья, подскажите по JS, сейчас у меня бекенд работает на 8081 порту, но я хочу, чтобы в режиме сборки в axios.baseURL подставлялься не `http://localhost:8081/api/v1/` а просто /api/v1/ как это разрулить через process.env?
heavycharged
baseURL: (process.env.NODE_ENV === 'production') ? '...' : '...' судя по всему, это оно