Как стать автором
Обновить
9
0
Максим @2developers

full stack web developer

Отправить сообщение
Да, именно так и пробовал в первый раз. Создать плагин с методом install. И там сделать это присвоение. Очень удивился, что не заработало, очевидных косяков не обнаружилось, поэтому начал смотреть, как сделано у других.

Оба варианта — с миксином из vue-wait и с Object.defineProperty из Nuxt заработали сразу. И они мало похожи на то, что описано в документации. Вероятно, не без причины.
Как-нибудь попробую ваш вариант, спасибо.
1) Конкретно в моем проекте нет необходимости делать inject для axios. Вызовы API я храню отдельно, в компонентах и сторе this.$axios я не использую. В статье пример с axios был с целью показать конфигурирование библиотек внутри плагинов, а не Dependency Injection в корневой экземпляр Vue.

2) Такой способ из документации у меня не сработал, это упомянуто в статье.
Vue.prototype.$myMethod = function (methodOptions) {
    // некоторая логика ...
}

Делать Object.assign в функции install вместо простого присваивания не пробовал.
Смысл такой же, как и в использовании глобальных миксинов и компонентов. Чтобы не делать импорт во всех файлах, если библиотека используется часто.
Понятно, что применять подобные зависимости надо обдуманно, чтобы не засорять глобальный экземпляр Vue.
Алексей, к чему эти личные вопросы? Вы что хотите доказать?
это добавление еще одного поля — увеличит вес таблицы. Да и я не уверен, что сортировка по этому полю будет быстрее чем RAND(). Точнее, приемлемо быстрой
Почему бы, в самом начале при генерации всех логинов, не расположить их в случайном порядке?

Генерация логинов выполнялась блоками. Нам не понравилось перемешивать их блоками. А если перемешивать их уже после создания, то это очень долго
такой уровень для «full stack web developer» явно слабоват.

написал в этом комментарии свое мнение по поводу уровня
Это вопрос терминологии. Для меня full stack означает ширину знаний, а не только глубину. Вполне естественно, что в каких-то областях опыта больше, а в каких-то меньше.
Нельзя по условиям задачи.
Раз уж даете такую резкую оценку статье и моему уровню, хотелось бы получить более развернутый ответ, чем плохо решение.
Если не вдаваться в детали, то это сервис, который генерирует логины по заранее заданному шаблону.
Согласен, хороший вопрос для собеседования. Можно оценить уровень знаний кандидата, ну или посмотреть, как он рассуждает.
На счет решения проблем — именно на таких задачах и нарабатывается опыт. Можно было бы остановиться на генерации «на лету» и это прекрасно работало бы несколько лет. Но была возможно сделать чуть более идеальнее, почему нет.
занимаемое таблицей место ведь в разы уменьшится?

Я не совсем понял вашу идею. Если уменьшится количество строк, то занимаемое место уменьшится, да.
А как дальше быть с таблицей? Как выбирать случайную строку, как удалять. Поясните, хотя бы кратко.
Если бы условия задачи были другие, то и решение было бы другое. Количество вариантов было заранее посчитано, с комбинаторикой у нас все в порядке.

при таком количестве вариантов шанс попасть в занятый логин минимален, даже при половинном заполнении базы, что очень-очень малореально

Да, так и есть. Хотелось «идеального решения», поэтому смысл заморочиться с этим был. Интересная задача
Да, отличный опыт.)
загнать в любую БД/файл уже случайно-сортированную последовательность — это несложно

ну вот, оказалось что сложно
Можно и в базу записывать, тоже будет быстро и не скоро начнет тормозить. Но хотелось решить задачу «идеально».
Определенно, беспокоиться не стоит. Но интересно же найти элегантное решение, правда?
Распределение будет хорошее. Но взять из такого большого файла одну случайную строку не быстрее, чем из базы. Верно?
Полученную строку можно рассматривать не только как логин, но и как уникальный номер. Сертификата, купона и т.п. Поэтому было решено написать алгоритм, который работал бы одинаково быстро при любом количестве уже сформированных строк.
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность