Size: a a a

Vue.js Russian Developers Community

2016 September 12

S

Semyon V in Vue.js Russian Developers Community
Вооот, контекст во vue-файле для меня пока тоже загадочен.

<script>
 const shared = {}

 const myFunc = () => {
   console.log(this) // => undefined (wha???)
 }

 export default {
   data: () => ({shared})
 }
</script>
источник

S

Semyon V in Vue.js Russian Developers Community
ну и есть ощущение что в данном случае dispatcher всё-таки сам не пробросится...
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
import {MyAction} from 'vuex/actions';
const shared = {}

export default {
 methods: {
     myFunc: function (some, data) {
       this.myAction(some, data);
     }
 },
 vuex: {
     actions: {
         myAction: MyAction
     }
 }
 data: () => ({shared})
}
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
Пробросится
источник

S

Semyon V in Vue.js Russian Developers Community
о, вот так похоже должен! спасибо)
источник

AP

Andrey Pastukhov in Vue.js Russian Developers Community
относитеть к *.vue
<template lang='jade'></template>
<style lang='scss'>
<script></script>

как
*.js
import template from '!jade!./template.jade'
import style from '!style!scss!./style.sass'

const fn = () => {}

export default {
 // объект для описания Vue инстанса
}
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
Andrey Pastukhov
относитеть к *.vue
<template lang='jade'></template>
<style lang='scss'>
<script></script>

как
*.js
import template from '!jade!./template.jade'
import style from '!style!scss!./style.sass'

const fn = () => {}

export default {
 // объект для описания Vue инстанса
}
Я его сразу отбросил. Для непривыкших будет неочевидно. Проще отделять шаблон от кода.
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
Такой маленький чатик. В реакте аж 1003 человека. UPD: уже 1005
источник

BV

Bogdan Volyk 😻💖🙀 in Vue.js Russian Developers Community
Александр Ефименков
Такой маленький чатик. В реакте аж 1003 человека. UPD: уже 1005
Ну так реакт на мегахайпе, а вуе только у азиатов популярен. Наверняка есть китайский чяттек с 1000+.
источник

AP

Andrey Pastukhov in Vue.js Russian Developers Community
Bogdan Volyk 😻💖🙀
Ну так реакт на мегахайпе, а вуе только у азиатов популярен. Наверняка есть китайский чяттек с 1000+.
Правильно вью
источник

S

Semyon V in Vue.js Russian Developers Community
господа, а как тогда один метод компонента вызвать в другом методе того же компонента?
источник

S

Semyon V in Vue.js Russian Developers Community
this.methodName() не работает. нашёл какой-то способ с эвентами, но он мне не очень нравится
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
this.methodName должен работать. Уверен, дело опять в контексте
источник

BV

Bogdan Volyk 😻💖🙀 in Vue.js Russian Developers Community
Andrey Pastukhov
Правильно вью
Буду знать. Просто никогда не смотрел видосы еще или такое, где произносили название. :з
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
Semyon V
this.methodName() не работает. нашёл какой-то способ с эвентами, но он мне не очень нравится
Будь осторожен со стрелочной нотацией. Она действует наподобие bind(this) и если this еще не определено - то беда. В вуе проще использовать обычные функции. Он на все эвенты прокидывает свой контекст, так что его потерять не так просто
источник

S

Semyon V in Vue.js Russian Developers Community
Александр Ефименков
this.methodName должен работать. Уверен, дело опять в контексте
да, похоже я и вправду что-то делаю не так.

в общем задача моего компонента - по активации загрузить json, а потом выполнять регулярное действие над элементами из него.

я поступил так:

  export default {
   activate: (done) => {
     actionOne()
       .then(startIterating)
       .finally(done)
   }
источник

S

Semyon V in Vue.js Russian Developers Community
Александр Ефименков
Будь осторожен со стрелочной нотацией. Она действует наподобие bind(this) и если this еще не определено - то беда. В вуе проще использовать обычные функции. Он на все эвенты прокидывает свой контекст, так что его потерять не так просто
а ну вот похоже это и есть ответ на мой вопрос...
источник

АЕ

Александр Ефименков in Vue.js Russian Developers Community
Да. Там this еще не определен
источник

S

Semyon V in Vue.js Russian Developers Community
я всё понял... немного переигрался с typescript'ом ))
источник

AS

Alexandr Staroverov in Vue.js Russian Developers Community
Компоненты ну должны работать с данными напрямую
источник