ᛇᛏᛟᚱᛁᛕ
Вот сделал синтетический примерчик https://pastebin.com/zQ3rDKY0
ᛇᛏᛟᚱᛁᛕ
Если в отладчике его смотреть то starPosition при движении мышкой меняется отлично. Если раскомментировать вот эту строку <div>{{starPosition}}</div> то все сбрасывает на нули.
ᛇᛏᛟᚱᛁᛕ
Сейчас на фидл какой нибудь сделаю
ᛇᛏᛟᚱᛁᛕ
http://playcode.io/dhfv23
Спасибо. Но теперь еще более странное поведение у меня. Там плейкоде все по другому. Сейчас распишу.
ᛇᛏᛟᚱᛁᛕ
А. Ну в целом понял.
ᛇᛏᛟᚱᛁᛕ
CherryTea
да, вижу, действительно поведение необычное, сейчас подумаю в чем может быть причина
ᛇᛏᛟᚱᛁᛕ
Вот то что отмечено стрелочкой при запуске не воспроизводится. Т.к. похоже не обрабатывается if при старте приложения. И это дело просто возвращает else и больше к этому свойству в цикле приложения не обращается. При этом если тупо открыть отладчик и выбрать рут то видимо приложение как то переинициализируется этим отладчиком и в этот цикл все таки заходит и цифири начинают бегать все хорошо. Поэтому в интернет версиях типа jsbin весь этот код ничего показывать не будет. Только с отладчиком. Почему при подключении любого вотчера будь то явная функция или попытка рендеринга в шаблон даже и такое поведение останавливается не понятно.
CherryTea
очевидно это связано с тем что computed свойства кешируются
ᛇᛏᛟᚱᛁᛕ
Это кеширование интересно можно отключить?
CherryTea
вообзе логика запутанная. computed пересчитывается каждый раз когда меняется одно из используеых в нем реактивных свойств (из data)
CherryTea
но у вас этого в computed нет
ᛇᛏᛟᚱᛁᛕ
this.blockPosition.x постоянно меняется
CherryTea
в starPosition не используется this.top или this.left
CherryTea
сейчас приведу пример
ᛇᛏᛟᚱᛁᛕ
А. Т.е. должна быть четкая зависимость от дата?
CherryTea
да
ᛇᛏᛟᚱᛁᛕ
Тоже самое
CherryTea
CherryTea
вот так работать будет
ᛇᛏᛟᚱᛁᛕ
вот так работать будет
:) это понятно. Почему тут то такое замысловатое поведение.
CherryTea
а this.$refs["icon"] по мнению vue не поменялся (потмоу что его нету в data)
CherryTea
он и не пересчитывает
ᛇᛏᛟᚱᛁᛕ
Короче я пока ставлю небольшой, но жирный минус vue за то что отладчик может поменять поведение кода
ᛇᛏᛟᚱᛁᛕ
он и не пересчитывает
Когда начинаешь смотреть в отладчике все пересчитывает
ᛇᛏᛟᚱᛁᛕ
Вот это начинает срабатывать только если жмакнуть в дебагере <Root>
CherryTea
у меня на вашем примере в дебагере не пересчитвает, однако если нигде не использовать starPosition а только консоль лог печатать - тогда пересчиывает - согалсен это странно
CherryTea
видимо кэширвоание подключают толкьо в том случае если нужна перерисовка дома
ᛇᛏᛟᚱᛁᛕ
CherryTea
это может быть особенностью дебагера, который дергает компьютед чтобы получить значение
CherryTea
проксик отработал и компьютед посчитался
CherryTea
debugger надежнее )
ᛇᛏᛟᚱᛁᛕ
это может быть особенностью дебагера, который дергает компьютед чтобы получить значение
это я считаю весьма отрицательное качество. Дебагер который добавляет ошибок :(
ᛇᛏᛟᚱᛁᛕ
debugger надежнее )
Ну так то тут тулза официальная и типа надежная должна быть.
CherryTea
Тем не менее это тоже браузерный js который работает в том же окружении, и отделить его от клиентского кода сложно. но и такой дебагер облегчает жизнь
ᛇᛏᛟᚱᛁᛕ
Но доверять я ему теперь не буду :)
CherryTea
?
Anonymous
?
это не туда написал 😁
Sergey
есть реактивный building:[]
Sergey
если JSON.parse(json).forEach(function(building){ self.building.push({ id:building.id... }); })
Sergey
то работает как должно, изменения в массиве тут же отображаются в html
Sergey
если JSON.parse(json).forEach(function(building){ self.building[building.id] = { id:building.id... }; })
Sergey
то реактивность пропадает
Sergey
почему?(
Stanislav
Потому что документацию надо читать
Michael
https://vuejs.org/v2/guide/reactivity.html
Vlad
Всем хорошего рабочего настроения! Кто что использует для заглушки данных? Допустим в Ember есть Mirage https://guides.emberjs.com/v2.16.0/tutorial/installing-addons/#toc_ember-cli-mirage. Есть что-то такое для Vue?
Stanislav
ну т.е. ты волен выбирать любой инструмент.
Vlad
ну т.е. ты волен выбирать любой инструмент.
есть примеры? лучшее на практике
Alexey
Можно мокать запросы с jest через vue-test-utils
Alexey
Но это только для тестов
Alexey
И немного не то, что ты просишь
Alexey
Т.е. ты можешь для post, get,... написать свою обертку и там мокать ответы
Michael
есть примеры? лучшее на практике
я, наверна, всё елаю неправильно, но делаю моки вне тестов прямо в экспресс.
Michael
т.е. в ноде
Alexey
Имею в виду, ставить соответствие запросов и ответов
Rafael 🌵
Ребзь, кто-то видел презентации по vue?
Alexey
Там jest юзается
Alexey
Ребзь, кто-то видел презентации по vue?
Какие презентации? Конфа или вообще?
Rafael 🌵
Всмысле обычные презентации для выступлений
Bohdan
ты цель скажи)
Vlad
@beraliv создал сервер, который отдает на get, post данные.
Rafael 🌵
Цель: внутри компании рассказать про вью, про разработку на вью (архитектура, все дела)
Bohdan
то ли здесь кидали, то ли я сам находил state of vue он больше с точки зрения "продать заказчику"
Bohdan
т.к. чисто программистского там маловато
Stanislav
@beraliv создал сервер, который отдает на get, post данные.
есть axios-mock-adapter, если используешь axios. Mimic.js для клиентской части, всякие Faker.js и т.д.
Bohdan
Цель: внутри компании рассказать про вью, про разработку на вью (архитектура, все дела)
ну и быстрый гуглеж навел меня на слайдшейр https://www.slideshare.net/DavidLien1/vuejs-introduction для примера - думаю, сойдет
Bohdan
https://cdn2.hubspot.net/hubfs/1667658/State_of_vue/State%20of%20Vue.js%20report%202017%20by%20Monterail.pdf и state of vue.js соответственно
zinge 🐌
Цель: внутри компании рассказать про вью, про разработку на вью (архитектура, все дела)
сам накидай ))) пагинация, все дела, реактивность, скомпиль прод и запусти одним файлом с флешечки))))
Rafael 🌵
сам накидай ))) пагинация, все дела, реактивность, скомпиль прод и запусти одним файлом с флешечки))))
Сначала надо бы аналитику надо собрать, чтобы преза нормальной вышла
Bohdan
Сначала надо бы аналитику надо собрать, чтобы преза нормальной вышла
за аналитикой - по второй ссылке, там статистики всякой выше крыши
Rafael 🌵
Bohdan
у меня открывает ок попробуй через шортенер https://goo.gl/fdL8L1