Как подписаться на объект Spec (TextInputField)

<template>
    <div v-if="isGetTools">
        This is Default child component
        {{tools[0].name}}
    </div>
</template>

<script>
import { CustomJS } from '../js/custom.js';

export default {
  name: 'HomeContent',
  props: {
    tools: []
  },
  data: function () {
    return {
      isGetTools: false
    }
  },
  methods: {
      fetchData() {
        const customJs = new CustomJS();
        this.tools = customJs.getTools();
        this.isGetTools = true;
      }
  },
  created() {
    this.fetchData(); //preferably need to wait here wait for response
  }
}
</script>

Попробуйте добавить v-if в свой div. И обновите isGetTools до true после получения результата от AXIOS

1
задан eMBee 22 January 2019 в 04:40
поделиться

1 ответ

вы ищете acceptBlock:, который будет вызывать блок каждый раз, когда изменяется текстовое значение:

| cm |
cm := TextInputFieldPresenter new.
cm autoAccept: true.
cm acceptBlock: [ :txt | doSomething with: txt.].

вы можете найти это и больше о спецификации в буклете спецификации: http: / /books.pharo.org/spec-tutorial/

обратите внимание, что в более новых версиях pharo классы spec были переименованы в ...Model в ...Presenter, что еще не отражено в буклете. поэтому, используете ли вы TextInputFieldModel или TextInputFieldPresenter, зависит от вашей версии pharo.

0
ответ дан eMBee 22 January 2019 в 04:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: