
Yushkevich
23.08.2017
20:02:27
Я создал app.js в парке local

Den
23.08.2017
20:02:34
Bitrix переписать?

Yushkevich
23.08.2017
20:02:39
Все обрамил в див с app
Файл с этим js инклюжу в футаре

Google

Yushkevich
23.08.2017
20:03:10
В корне лежит вебпак

Stanislav
23.08.2017
20:03:37

Yushkevich
23.08.2017
20:03:41
Добавил туда laravel-mix и его натравил на папку, где лежат файлы компонентов
App

Stanislav
23.08.2017
20:04:00

Yushkevich
23.08.2017
20:04:34
Bitrix переписать?
Типа того. У меня за сутки 3 тикета, ушедшие а маниис. А скорость работы корзины уже в 2,5 раза быстрее и качтомизируетчя как надо

Valery
23.08.2017
20:04:46
People, как вы не устаете сутками здесь висеть и общаться? ?

Yushkevich
23.08.2017
20:04:51
В общем шаблоне

Valery
23.08.2017
20:05:35
Вам заняться больше нечем? ?

Stanislav
23.08.2017
20:05:56
Ох, сложна гадать удаленно)

Yushkevich
23.08.2017
20:06:48
<body>
<div id = "app">
...
</div>
</body>

Google

Yushkevich
23.08.2017
20:06:48
Примерно так

Valery
23.08.2017
20:06:52

Stanislav
23.08.2017
20:06:55
Нужна статья "Юзаем Vue как jquery"

Yushkevich
23.08.2017
20:07:20
На нужной мне странице в шаблоне вывожу <cart..>
Сами данные выводятся. Обновление работает, пересчеты там всякие.
Я на удалении завис
Запрос уходит, но из списка не удаляется

Den
23.08.2017
20:09:17

Yushkevich
23.08.2017
20:09:40
Сервер возвращает. Если обновить страницу - элемента больше нет

Stanislav
23.08.2017
20:09:51
Примерно так
Я понял.
Лучше создавать отдельные инстансы Vue в нужных местах.
Ну т.е. в el писать не '#app', а допустим "#cart-block"
Грубо говоря - создавать отдельные виджеты под необходимую функциональность.
А сейчас вы запихиваете весь сайт в Vue, хотя необходимости в этом нет

Den
23.08.2017
20:10:13

Yushkevich
23.08.2017
20:10:22
Ага, понял. Получается что-то типа виджетов?

Den
23.08.2017
20:11:07

Stanislav
23.08.2017
20:11:18

Den
23.08.2017
20:12:32
Бэк со стажем

Stanislav
23.08.2017
20:12:55

Yushkevich
23.08.2017
20:13:10
Попробую как до компа дойду
Там и на получение нужно своё апи писать по хорошему, чтобы работало норм

Google

Yushkevich
23.08.2017
20:13:59
Я пока для пробы взял данные, что битрикс отдаёт
Бэк со стажем
Да, под вечер "коллбек" с ответом с сервера перепутал уже. Извини, мозги не самые свежие

Victor
23.08.2017
20:18:53
ребят, а юзать айдишники в скопед стилях можно, или айди 1 на странице должен быть и если в двух компонентах будет одинаковый айдишник это приведет к невалидности?

Andrey
23.08.2017
20:19:25
Вопрос. А то что в vue называется дерективами, этого же нет в реакте? Там прямо на js пишешь все что нужно?

Den
23.08.2017
20:23:04

Stanislav
23.08.2017
20:23:18

Victor
23.08.2017
20:23:42
ну раньше ж не было веб компонентов, я думал мб это уже изменили)
все таки я чувствую себя немного не так, когда обращаюсь по классу к штуке, которая 1 на компонент

Den
23.08.2017
20:24:24
Вот херово, что нельзя по @click в метод сам элемент тусануть

Tankerxyz
23.08.2017
20:28:53
а $event.target не идет? @Piterden

Den
23.08.2017
20:36:00
В таблице если слушать на tr'ах, то таржет будет тд
Можно, правда сделать .self

Stanislav
23.08.2017
20:37:56
Может завтра ?

Den
23.08.2017
20:38:23
Давай норм
Споки

Google

Stanislav
23.08.2017
20:38:53
?

Stanislav
23.08.2017
21:19:37
у меня выбор между двумя стульями
display none vs height 0

Egoarka
23.08.2017
21:21:57
https://www.youtube.com/watch?v=Ns0zijQJxH4

Stanislav
23.08.2017
21:22:30
всё так. анимации делают очень отважные

Den
23.08.2017
21:23:31

Stanislav
23.08.2017
21:23:37
оо да

Yushkevich
23.08.2017
21:23:49
еее, получилось!
@Piterden @c01nd01r
Ребята, спасибо большое за помощь!
Навели на мысль, сделал проще
входящие пропсы переименовал и в дата сделал
products: this.arrProducts,

Admin
ERROR: S client not available

Yushkevich
23.08.2017
21:24:21
и уже дальше работал не с входящими пропсами а с переменной, куда положил. Сразу все взлетело
Еще раз спасибо!

Den
23.08.2017
21:24:39

Yushkevich
23.08.2017
21:33:15
+
можно еще вопрос?
Если я из emit хочу еще и даные отдать, я делаю
this.$emit('remove', response.data);
а когда в parent вызываю метод
мне надо и данные и index отдать
без index я делал так
@dataUpdated="updateCart"
updateCart(value) {
ну и вот так туда данные отдавал this.$emit('dataUpdated', response.data);

Google

Yushkevich
23.08.2017
21:34:30
а тут пытаюсь 2 аргумента отдать
и index и value
и что-то одно только уходит
как правильно нужно сделать?

Den
23.08.2017
21:38:14
Объект payload

Yushkevich
23.08.2017
21:38:41
его в дебагере в event вижу, там все что надо. А как к нему добраться?
то есть я в функции оставляю только index
а в методе делаю типа this.payload.data ?

Stanislav
23.08.2017
21:45:26

Den
23.08.2017
21:49:55

Yushkevich
23.08.2017
21:50:46
мы чуть ранее это разбирали - удаление элемента
<div v-for="(product, index) in products">
<basket-product :product="product"
@dataUpdated="updateCart"
@remove="removeProduct(index)"
>
</basket-product>
</div>
я на jsfiddle весь код кидал
у меня при удалении еще меняется общая сумма, После запроса я ее с сервера отдаю. Мне ее нужно в parent обновить
на изменение количества товаров я делаю просто
updateCart(value) {
this.allBaseSum = value.totalBasketBasePrice;
this.allSum = value.totalBasketPrice;
},
вот мне сюда нужно как-то эти же данные получить
removeProduct(index) {
this.products.splice(index, 1);
// this.allBaseSum = this.totalBasketBasePrice;
// this.allSum = this.totalBasketPrice;
}
я не понимаю, как мне отсюда до них достучаться

Den
23.08.2017
21:53:44
Где фидл

Yushkevich
23.08.2017
22:00:41
https://jsfiddle.net/toum6nLb/10/
перенес туда последние изменения, но где-то скосячил. Идея перенесена, код еще не работает. Сейчас запущу
завелось. В районе 26-31 строки js как раз метод, где мне надо вытащить из payload

Den
23.08.2017
22:07:24
Тотал должен быть компьютед

Yushkevich
23.08.2017
22:09:29
а то что он с сервака мне приходит - пох?