Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.08.2020, 14:10
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,576

По закрытым частям модулей
Приветствую.
Я вот думаю как покошерней оформляется сейчас вспомогательный код в модуле.
Видел что просто функциями делают, ну и я то же пока так:
import axios from 'axios'

let apiKey = 'овововоов';
let baseUrl = 'https://api.someurl.com';

export default {
    async fetchMovies(movieType, page = null, cb, errorCb = null, ) {
        await axios.get(createUrl(movieType, page))
        .then((response) => {
            cb(response.data);
          })
          .catch(function (error) {
              if (errorCb) {
                errorCb(error);
              }
          });
    }   
}

function createUrl(movieType, page = null) {
  let url = baseUrl . movieType + '?api_key=' + apiKey;
  return url;
}


Функция эта снаружи, я так понимаю, видна не будет. В том числе когда и сборщиком все это собирается, ведь да?
Но вот насколько этот результат ООП...
Вот даже просто когда пишешь модуль для vuex у vue
const state = () => ({
    omegas: []
  })
  
  // getters
  const getters = {
    omegas(state) {
      return state.omegas;
    },
    lastOmega(state) {
      return state.omegas.length ? state.omegas[state.omegas.length - 1] : null;
    }
  }
  // actions
  const actions = {
    setOmegas ({ commit }, payload) {
      commit('setOmegas', payload)
    }
  }
//...
  export default {
    namespaced: true,
    state,
    getters,
    actions,
    mutations
  }

, где всю дополнительную работу делать, тот же код, который общий для разных экшенов?

Может это как то по-хипстеровей сейчас делается?

Например, вот как я этот модуль с api подключаю в других модулях, так и внутри него подключать модуль, который экспортирует объект с методами, требуемыми текущему.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка модулей по требованию нужна при конкатенации? desperado Angular.js 2 29.01.2015 12:39
Конфликт модулей Javascript на сайте Roxy Библиотеки/Тулкиты/Фреймворки 0 20.12.2014 17:25
Унылого треша тред megaupload Оффтопик 648 17.06.2014 14:31
Создание элемента с закрытым тегом maguaguru Элементы интерфейса 4 04.10.2013 09:19
Собрать переменную по частям, реально? Reflexion Элементы интерфейса 3 17.01.2010 18:05