Size: a a a

Vue.js Russian Developers Community

2020 June 18

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Timur Tuz
ребят подскажите. В компоненте data должна быть функцией судя по манам. А как изменять тогда свойства эти из методов? делаю this.loading = true  - ругается.
Записано верно. Читай ошибку и проверяй код
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Timur Tuz
ребят подскажите. В компоненте data должна быть функцией судя по манам. А как изменять тогда свойства эти из методов? делаю this.loading = true  - ругается.
А на что именно ругается?
источник

TT

Timur Tuz in Vue.js Russian Developers Community
Aleksandr Ivanov
А на что именно ругается?
Cannot set property 'loading' of undefined
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Так, для справки. Замечено, что инет-магаз Связного и Лайфхакер на Вью)
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Timur Tuz
ребят подскажите. В компоненте data должна быть функцией судя по манам. А как изменять тогда свойства эти из методов? делаю this.loading = true  - ругается.
Если ты внутри метода проваливаешься глубоко и пытаешься вызвать свойства из data через this, то у тебя this может быть от вложенного метода/функции, а не от вью
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Тогда можно при входе в метод написать что-то в духе
const _this = this
И дальше работать с _this
источник

TT

Timur Tuz in Vue.js Russian Developers Community
хм.. а как тогда обратиться?
источник

TT

Timur Tuz in Vue.js Russian Developers Community
Aleksandr Ivanov
Тогда можно при входе в метод написать что-то в духе
const _this = this
И дальше работать с _this
понял. щас попробую
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Стрелочные функции поставь
источник

DK

Daniil Kuznetsov in Vue.js Russian Developers Community
Timur Tuz
хм.. а как тогда обратиться?
С уважением
источник

TT

Timur Tuz in Vue.js Russian Developers Community
Алексей Магнер
Стрелочные функции поставь
помогло спасибо!
источник

TT

Timur Tuz in Vue.js Russian Developers Community
Aleksandr Ivanov
Тогда можно при входе в метод написать что-то в духе
const _this = this
И дальше работать с _this
без стрелочной функции не смог добраться даже до _this )
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Timur Tuz
без стрелочной функции не смог добраться даже до _this )
Если тебе нужен доступ к свойствам из data, а сложного кода много и делать рефакторинг ломает, то _this можно назначать в самом начале сценариев блока. Например, в начале mounted() и т.п.
источник

TT

Timur Tuz in Vue.js Russian Developers Community
Aleksandr Ivanov
Если тебе нужен доступ к свойствам из data, а сложного кода много и делать рефакторинг ломает, то _this можно назначать в самом начале сценариев блока. Например, в начале mounted() и т.п.
а куда ее пихать? в глобальные переменные чтоли?
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Чисто личный опыт, мне помогало часто. Хз, может в 2020 году это уже и бич-кодинг)
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Timur Tuz
а куда ее пихать? в глобальные переменные чтоли?
Зачем в глобальные??
источник

DK

Daniil Kuznetsov in Vue.js Russian Developers Community
Что? В глобальную?
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Это плохая практика с такими конструкциями self, _this и прочее
источник

АМ

Алексей Магнер... in Vue.js Russian Developers Community
Timur Tuz
а куда ее пихать? в глобальные переменные чтоли?
Почитай про контекст, должно стать понятнее
источник

AI

Aleksandr Ivanov in Vue.js Russian Developers Community
Алексей Магнер
Это плохая практика с такими конструкциями self, _this и прочее
Да может... Просто иногда нужно пропихнуть что-то в setInterval, eventlistener и т.п.
источник