Задать вопрос
  • Как установить и настроить Composer на хостинге пошагово?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Если вы вводите команду composer init и видите ответ, значит composer уже установлен и доступен для использования.
    Осталось изучить документацию по использованию https://getcomposer.org/doc/01-basic-usage.md
    Ответ написан
    1 комментарий
  • Как установить и настроить Composer на хостинге пошагово?

    phpisgod
    @phpisgod
    Можно сделать все гораздо проще, просто выполните:
    composer require phpoffice/phpword
    и composer сам создаст composer.json с данными по умолчанию и подключит вашу библиотеку, а вам останется лишь подключить файл vendor/autoload.php в своем index.php:
    <?php
    require_once(__DIR__ . '/vendor/autoload.php');
    Ответ написан
    1 комментарий
  • Как установить PhpWord на сайт размещенный на виртуальном хостинге (без Composer)?

    myks92
    @myks92 Куратор тега PHP
    Нашёл решение — пометь вопрос ответом!
    Если нет возможности установить композер хостинге локально (скачать phar архив композера в проект) или глобально, то придется Установить на локалке, где есть композер и закачать проект на сервер.
    Ответ написан
    Комментировать
  • Как работает SSR-Rendering в NODEJS и почему он отличается от PHP?

    Robur
    @Robur
    Знаю больше чем это необходимо
    SSR-это запуск фронтендового js-фреймворка на ноде заранее,(вместо работы в браузере) и отдача клиенту того что получилось, вместе с фреймворком, дальше все это продолжает работать на клиенте.
    на php этого просто нет.

    почему второй гораздо менее производительый?

    правильно вопрос звучит так "почему то что у меня на nodejs написано медленнее того что у меня было на php" ответ как вы понимаете зависит от того что именно у вас там написано. В целом рендеринг на ноде не медленнее рендеринга в php сам по себе. Может у вас так все настроено, может как раз ssr тормозит
    Ответ написан
    8 комментариев
  • Как работает SSR-Rendering в NODEJS и почему он отличается от PHP?

    rockon404
    @rockon404
    Frontend Developer
    Потому что на PHP вы максимум используете шустрый шаблонизатор.
    Nuxt использует для рендера Vue, вычисления которого несколько сложней.

    Ну то есть вместо nodejs можно было бы и PHP использовать для серверного рендеринга.

    Хотите - используйте, но вы лишитесь преимуществ, которые дает изоморфный код.

    Сравнивать производительность PHP и Node, в вашем случае, не корректно. Так как дело в конкретных инструментах которые вы используете.
    Ответ написан
    7 комментариев
  • Стоит ли изучать nuxt.js?

    @kicker1337
    Работал с Nuxt в сумме примерно в течение года. Написал свой блог на нем (довольно большой), вот он на гитхабе: https://github.com/iliyaZelenko/blog-frontend

    Недостатки которые заметил:

    1) Он долго запускается при `nuxt dev` (мой блог запускается за 3-5 минут) и HMR обновляется в среднем 1-5 секунд (порой и дольше), даже если обновил просто template. Это больше всего напрягает.

    2) После изменения кода, иногда папка `.nuxt` генерируется с ошибкой, приходится менять любую строчку в исходниках проекта чтобы опять запустить генерацию или порой полностью перезапускать Nuxt. Такая проблема была замечена не на всех проектах.

    3) Бывает проблематично использовать модули которые не идут сразу на сервере и на клиенте, но это больше проблема SSR. Еще порой хочется получить сам nuxt контекст где store, router, плагины, но это нельзя сделать в некоторых местах, обычно эта проблема на клиенте. Например, на клиенте в store где state еще нет свойства window.$nuxt, нельзя обратится к плагину универсальных куков cookie-universal-nuxt и взять из куков значение и записать в state, а по другому к контексту nuxt не обратится. Store тяжело получить в самом store, порой это нужно.

    4) Когда с ним использовал TypeScript, то иногда nuxt выдавал что типа (обычно интерфейса) не существует или другие ошибки типов, но этих ошибок на самом деле не было. Единственный выход — заново запускать nuxt dev и долго ждать, порой эта проблема возникала по несколько раз в течении 20 минут, приходилось перезапускать несколько раз.

    В моем блоге мне почти всегда нужно было Dependecy Injection чтобы внедрять разные модули, но они были не доступны в `asyncData`, там нет this, пришлось получать прямо из контейнера. Пример кода:

    const CategoryRepository = serviceContainer.get<CategoryRepositoryInterface>(TYPES.CategoryRepositoryInterface)


    Взят от сюда.

    Вообще вместе с vue-class-component нельзя использовать конструктор чтобы внедрять там зависимости, я использовал inversify для DI, но чтобы оно работало vue-class-component пришлось использовать костыль с vue-inversify-decorator (костыльный способ от разработчиков vue-class-component исправить эту проблему), писать `@Provide(container)` в layouts/default.vue (лучшего места не нашел к сожалениию, это тоже минус). Как было бы удобно если внедрил зависимости в конструктор и они сразу есть во всем компоненте и в `asyncData`.

    Хочу изучить next (react) чтобы было с чем сравнить.
    Ответ написан
    2 комментария
  • Как решить проблему подключения firebase в nuxt.js?

    Данная проблема возникает из-за SSR. Если вы инициализируете Firebase в `plugins/`, то скрипт выполняется и на сервере и на клиенте.

    Мое решение:

    1. Инициализируем Firebase в файле `plugins/firebase`:

    import firebase from "firebase";
    
    const config = {
        apiKey: "...",
        authDomain: "...",
        databaseURL: "...",
        projectId: "...",
        storageBucket: "...",
        messagingSenderId: "..."
    };
    
    firebase.initializeApp(config);
    
    const db = firebase.database();
    
    export { db };


    2. В файле `nuxt.config.js`:

    /*
     ** Plugins
    */
    plugins: [
        { src: '~/plugins/firebase', ssr: false }
    ]


    Опция ssr: false отключает выполнение скрипта на стороне сервера


    3. Использование в компоненте

    import SectionHero from '~/components/sections/Hero.vue';
    import SectionAboutUs from '~/components/sections/AboutUs.vue';
    import { db } from '~/plugins/firebase.js';
    
    export default {
      components: {
        SectionHero,
        SectionAboutUs
      },
      methods: {
          addCar: function () {
            db.ref('cars/fiat').set({
              model: "Fiat Ducato",
              year: 2017,
              active: false
            });
          }
      }
    }
    Ответ написан
    Комментировать
  • Как во Vue.js выполнить 2 события по @click?



    Можно просто через запятую перечислить методы:
    @click ="toggle($event), clickAction"

    *Для работы toggle нужно передавать обьект события $event, по умолчанию, когда прописан один метод, $event - передается автоматически
    Ответ написан
    Комментировать
  • Как победить window is not defined в подключаемом плагине?

    @ghostiam
    На Go писатель, серверов пинатель.
    В Nuxt плагины обрабатываются и на сервере и на клиенте, но так как объекта window на сервере нет, необходимо указать nuxt, что данный плагин не стоит использовать при SSR

    module.exports = {
      plugins: [
        // ssr: false to only include it on client-side
        { src:  '~plugins/fullpage-vue.js', ssr: false }
      ],
    build: {
        vendor: [
          'fullpage-vue'
        ]
       ...
    }

    Источник: https://nuxtjs.org/examples/plugins
    Ответ написан
    1 комментарий
  • Зачем сайты предупреждают про использование куки?

    @InoMono
    Закон Евросоюза о cookies. Он уже отменен. Но не все про это знают и не всем не лень переделывать сайт. Ну а на русском эти предупреждения просто ради единства кодовой базы на всех языках на сайтах корпораций или по причине неосведомленности наших вебмастеров, которые просто собезьяничили.
    Ответ написан
    Комментировать
  • Зачем сайты предупреждают про использование куки?

    Stalker_RED
    @Stalker_RED
    Закон Евросоюза о cookies вступил в силу в 2011 году, но ICO (Information Commissioner’s Office) решили, что справедливо будет дать владельцам сайтов один год для выполнения требований закона. Крайним сроком было назначено 26 мая 2012 года. С этой даты сайты, не соответствующие требованиям закона, могут быть оштрафованы на сумму £500 000.

    В общих словах, новые правила требуют, чтобы веб-сайт получал разрешение от посетителей прежде, чем записывать cookies на их компьютеры. Это значит, что вы должны прямо спросить посетителей, можно ли записать cookies и четко объяснить, какие cookies для чего используются.
    https://habrahabr.ru/post/143235/
    Ответ написан
    3 комментария
  • Синхронный и асинхронный код, почему так называется?

    MarcusAurelius
    @MarcusAurelius
    автор Impress Application Server для Node.js
    А сам код синхронным не называется, это его по ошибке или для упрощения так называют. Синхронным и асинхронным называется только API ввода-вывода, т.е. операции, прерывающие исполнение кода и требующие от системы обратиться к внешнему устройству, работающему не синхронно с центральным процессором. Операции ввода-выдвода, каковые есть: работа с дисками, портами, контроллерами, периферийными устройствами, как клава, мыша, тачскрин, разные датчики, вебкамера, сетевые карты, блютузы и другие радиомодули, принтеры, видеокарты и прочее. Все они получают задание от программы, и исполняют его отдельно, своими мощностями. Потом внешние устройства присылают программе сигнал о статусе исполнения и, возможно, полученные данные. Программа все это время может ждать (если у нее синхронное API, т.е. блокирующее) или что-то делать (если асинхронное, т.е. не блокирующее). Если программа ждет, не переходит к выполнению следующего действия, то это синхронный ввод-вывод, потому, что осуществляется процесс синхронизации программы с внешним устройством. Внешне устройство посылает прерывание, которое обрабатывает операционная система и через несколько слоев драйверов оно попадает в программу, обычно в виде колбека или события. Если программа ждала, то вызов API не завершался, она все время слушала, когда придет событие о завершении операции ввода вывода, а получив его API отдает ответ и управление переходит к следующей команде, что и называется, синхронизацией с периферийным устройством. Если программа не ждала, то вызов API сразу завершается и не блокирует поток выполнения программ, это называется асинхронным API, потому, что процесс синхронизации не происходит явно, а ответы возвращаются через события.
    Ответ написан
    3 комментария
  • Стоит ли изучать nuxt.js?

    @beduin01
    Не стоит изучать. В Vue 3.0 это будет из коробки
    Ответ написан
    5 комментариев
  • Чем отличается npm init от npm install?

    boratsagdiev
    @boratsagdiev
    npm init задаёт вам разные вопросы и создает package.json, который определяет настройки проекта, зависимости, скрипты, название и прочее.
    npm install [module] устанавливает модуль с именем module.

    То есть, чтобы начать работу, сначала вам нужно сделать npm init (можно с опцией --yes, которая установит на все вопросы дефолтные ответы), а потом уже устанавливать модули командой npm install
    Ответ написан
    9 комментариев
  • Где можно скачать базу штрих кодов и названий товаров

    @MrRitm
    Собрал базу для продуктового магазина для 1С-розница или управление торговлей. Кому надо - качайте blog.erofeevonline.ru
    Ответ написан
    Комментировать
  • Где можно скачать базу штрих кодов и названий товаров

    @1099511627776
    Пишу все что интересно и на всем на чем интересно
    У производителей есть такое понятие как «Спецификация» на новые товары
    С нее супермаркеты и набивают в свою базу товары.
    Собствено вот такую базу я могу предоставить ЧИСТО ДЛЯ «просто курсач-а»
    Ответ написан
    1 комментарий