
bulbazavr1k
21.08.2018
16:18:05
где тогда запросы прописывать

Dmitry
21.08.2018
16:36:34

bulbazavr1k
21.08.2018
16:36:55
я больше никогда не буду использовать nuxt, это самое ужасное

Google

Dmitry
21.08.2018
16:37:14
сделать инстанс axios и импортировать его там где необходим
у моего знакомого большой проект на нём и вроде всё хорошо

bulbazavr1k
21.08.2018
16:38:30

Dmitry
21.08.2018
16:39:30
https://github.com/axios/axios
const instance = axios.create({
baseURL: 'https://some-domain.com/api/',
timeout: 1000,
headers: {'X-Custom-Header': 'foobar'}
});
export default instance
import api from 'path_to_instance_File'
api.get(url)

Mike
21.08.2018
17:26:59
дайте ссылки на туторы по разбиению компонентов по папкам

Александр
21.08.2018
17:37:31
Nuxt посмотри
Как там сделана структура

Mike
21.08.2018
17:43:29
Nuxt посмотри
это? https://ru.nuxtjs.org/guide/directory-structure/

Denis
21.08.2018
17:46:03
Кто-то работал с chartjs и chartkick? Они принимают переменные вместо значений? У меня почему-то не отображаются значения из переменных - просто пустой график выводится.

Kenan
21.08.2018
17:49:35
О, какие люди

Google

Asya
21.08.2018
17:50:08

Александр
21.08.2018
18:20:45

Denis
21.08.2018
18:44:35

Александр
21.08.2018
18:46:10

Denis
21.08.2018
18:48:06
Да, но если у меня меняется это значение, как его тогда записать туда так, чтобы если оно измениться показывалось другое? Не вручную же меняться каждый раз.

Александр
21.08.2018
18:50:20

Denis
21.08.2018
18:51:50
vue-chartjs я тоже пробовал, у меня также не отображалось через переменный ничего, либо я неправильно записываю как-то, но примеров я не нашел как иначе еще записать.

Александр
21.08.2018
18:53:45
даже дока на русском есть

Denis
21.08.2018
18:55:28
окей, спасибо. буду разбираться

Александр
21.08.2018
18:56:22
вот тебе демка
https://github.com/apertureless/vue-chartjs/tree/develop/src/examples
вот ещё несколько
Первыe ссылки в гугле

Dmitry
21.08.2018
21:02:42
есть компонент
@Component
export default class Projects extends Vue {
project: Project = new Project(0, 0, "");
и метод
addScenario() {
this.project.scenarios.push(new Scenario());
почему this.project.scenarios не реактивны?
в документации только про изменение конкретного элемента массива сказано, но я ведь просто пушу.
или так не считается?
и как сделать, чтобы шаблон обновился?

Alex
21.08.2018
21:03:59
Есть ограничения по мутированию массивов и объектов, которые невозможно отследить средствами JS. Перечитайте в документации в разделе рендеринга списков

Dmitry
21.08.2018
21:06:18
вот читаю. написано, что pust() оборачивается
а не отслеживается изменение по индексу.
я как раз пушу и не изменяю по индексу

Alex
21.08.2018
21:06:59
это вы про массивы прочитали
а теперь дальше прочитайте про объекты

Google

Dmitry
21.08.2018
21:08:14
Vue не позволяет динамически добавлять новые реактивные свойства на корневом уровне уже созданного экземпляра. но я же не в корневом добавляю
и не свойство, а просто пушу элемент в массив

Alex
21.08.2018
21:09:22
у вас меняется свойство объекта

『Ark』∞
21.08.2018
21:09:59
^

Dmitry
21.08.2018
21:11:18
а какой воркэраунд для моего кейса?
беру this.project.scenarios в переменную, пушу туда нужное, а потом через
Vue.set( this.project, 'scenarios', scenarios)
подменяю обратно?
а нельзя просто указать, что объект изменился и нужно обновить зависимости?
вдеь этот воркэраунд немного дурно пахнет

Alex
21.08.2018
21:13:18
можете не создавать иерархий глубоких, меньше будет забот

Dmitry
21.08.2018
21:16:50
эм… массив в объекте — это уже глубоко?
тут даже свойство в объекте — недосягаемая глубина без спецсредств
есть ли способ заставить Vue обновить зависимости и перерисовать связанный DOM?
о, есть, отлично

Alex
21.08.2018
21:19:08
$forceUpdate и вообще все будет обновляться, но это костыль

Dmitry
21.08.2018
21:20:18
ну можно ещё в объекте какое-то поле поменять (типа i++) и тогда тоже обновится.

Yan
21.08.2018
21:20:49
Его ещё не выпилили

Yan
21.08.2018
21:21:12
?

Dmitry
21.08.2018
21:22:52
у меня работает
получается, есть три солюшна
1:
this.project.scenarios.push(new Scenario());
this.$forceUpdate();
2:
let scenarios = this.project.scenarios || [];
scenarios.push(new Scenario());
Vue.set(this.project, "scenarios", scenarios);
3:
this.project.scenarios.push(new Scenario());
this.project.tmp++;
причём третий делает наименьшее количество магии, имхо

Yan
21.08.2018
21:29:29
Что за конструктор

Dmitry
21.08.2018
21:30:05
в каком месте?

Yan
21.08.2018
21:30:17
Scenario

Dmitry
21.08.2018
21:30:50
export class Scenario {
id: string = generateUUID();
stages?: Array<Stage>;
}

Google

Yan
21.08.2018
21:32:26
Крч ты пушишь объект он не появляется в компоненте реактивно

Dmitry
21.08.2018
21:32:44
угу

Admin
ERROR: S client not available

Dmitry
21.08.2018
21:33:20
но если я сделаю this.project.tmp++; — то отрисовывается. но я не знаю как там с реактивностью будет

Yan
21.08.2018
21:33:30
угу
Ты наверное пробовал лет обж = нью Сценарио
Массив.пуш(обж)

Dmitry
21.08.2018
21:34:05
нет, но, кажется, это эквипенисуально будет

Yan
21.08.2018
21:34:19
Ыхых
Попробуй

Dmitry
21.08.2018
21:38:59
let scenario = new Scenario();
this.project.scenarios.push(scenario);
квазипенисуально. монофалически
я вообще нахожу странным, что есть ограничение, которое явно прописано в документации, но нет ручки за которую можно дернуть и подсказать фреймворку, что у него там что-то изменилось без жонглирования объектами

Yan
21.08.2018
21:41:44

Dmitry
21.08.2018
21:42:03
не работает

Yan
21.08.2018
21:43:25
Значит вина в глубине

Victor
21.08.2018
22:24:17
Ребят, использую карусель, и нужно различать когда юзер кликает на картинку и когда просто скроллит карусель. Клик происходит в любо случае. Чтоб его отличить от драга, нужно заморачиваться и фигачить mousedown, mousemove, mouseup и ставить флаги, или как-то по другом можно? (https://stackoverflow.com/questions/6042202/how-to-distinguish-mouse-click-and-drag вот такое только нашел)

Andrey
22.08.2018
00:45:42
Есть кто неспящий?

Egor
22.08.2018
00:45:58
Где-то да

Andrey
22.08.2018
00:46:35
Не в курсе можно ли декомпилировать js файл
?
Т.е. типа из js обратно компоненты получить?

Egor
22.08.2018
00:47:45
не страдал таким, но есть сайты/сервисы которые из минифицированного файла сделают более-менее читаемый код

Google

Andrey
22.08.2018
00:48:26
Например?

Андрей
22.08.2018
00:51:10
Подскажите почему js не срабатывает, или может не правильно настроил. Хотя посмотрел аналогичные примеры, вроде также все. Собственно server.js:
Собирает тоже норм вроде бы

Egor
22.08.2018
00:52:58
Лучше подождать профи vue

Андрей
22.08.2018
00:53:02
и в index.html просто через скрипт подключаю app js

Roman
22.08.2018
00:58:28
history api на сервере не видно

Андрей
22.08.2018
01:00:36
В server.js еще какой то конфиг для history api нужен?
я думал только во вью роут прописать надо
Нашел в документации, поставил connect-history-api-fallback
подрубил:
const history = require('connect-history-api-fallback');
app.use(history());
но как бы ничего не изменилось