Вспомогательная функция в действиях vuex - PullRequest
0 голосов
/ 14 июля 2020

Предположим, у меня есть метод в

const actions = {
  async fetchByQuery({
    commit
  }, title) {
    const response = await..........code goes here
  }
}

И я хочу использовать свою собственную другую функцию внутри метода, например:

        const actions = {
          async fetchByQuery({
            commit
          }, title) {
            const response = await..........code goes here
            
            this.helperfunction();
          }
          
          helperfunction(){
             ......code goes here
          }
        }

Как go я могу использовать вспомогательную функцию?

Я пробовал описанный выше метод и получил ошибку this.helperfunction не является функцией

1 Ответ

0 голосов
/ 14 июля 2020

Вы всегда можете импортировать функции за пределами магазина, они не обязательно должны быть его частью.

// Either

import HelperFunction from "./helperfunction.js

// OR:

const HelperFunction = () => {
  console.log("Hello world!");
}

const actions = {
  async fetchByQuery({
    commit
  }, title) {
    const response = await..........code goes here
    
    // Use the helper function without `this`
    let formattedResponse = HelperFunction(response);
    
    commit('saveState', formattedResponse); 
  }
  
}

Стоит отметить, что у них не будет прямого доступа для изменения магазина, однако это может быть именно то, что вам нужно. Трудно сказать, не зная контекста вашего вопроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...