Ответы пользователя по тегу Node.js
  • Почему не работает камера телефона на js?

    duboloms
    @duboloms
    Люблю есть дубы с кетчупом. Веб-разработчик.
    Может быть это из-за localhost? Иногда javascript на localhost блокируется
    Ответ написан
  • Полностью отрубился fs в Electron, что делать (Решен)?

    duboloms
    @duboloms Автор вопроса
    Люблю есть дубы с кетчупом. Веб-разработчик.
    -------------------------------------------------
    Ответ, который сработал для меня:

    ИЗМЕНЕНО (оставляю памятку, для тех кто тоже столкнулся с такое проблемой):
    Я нашел ответ, все не работало из-за __dirname, из-за webpack, он выдавал мне просто / :

    console.log(__dirname); // выдавал мне /  (  / - это символ слеш если что)

    Нужно было в webpack.conf.js написать:
    node: {
      __dirname: true
    }

    Вообще, лучше (если вы используете nodeJS) поставить свойство global: true (а также __filename): - оно сделает все функции nodejs валидными, или другими словами, не будет мешать nodejs делать свою работу:
    node: {
      global: true,
      __dirname: true,
      __filename: true
    }

    Подробнее о node свойстве в webpack.conf.js тут: https://webpack.js.org/configuration/node/
    После чего, я попробовал вывести __dirname:
    console.log(__dirname); // выдает src/assets/js/app.js

    Вот работающий readFileSync:
    let fileData = fs.readFileSync(__dirname + "/text.txt").toString();
    console.log(fileData); // выдает: "Привет, soso!"


    В общем, сам fs работал, в writeFile, я просто не указал во 2-ом параметре коллбэк обработки ошибки (или 3-ем если вы передаете дополнительный параметр "utf-8") err => if(err) console.log(err);
    Пример:
    const fs = require("fs");
    
    fs.writeFile("/text2.txt", "Привет", err => { if(err) console.log(err) });
    // или
    const fs = require("fs");
    
    fs.writeFile("/text2.txt", "Привет", "utf-8", err => { if(err) console.log(err) });

    Подробнее (а также это место где я нашел информацию о том, что webpack блокирует __dirname):
    https://github.com/webpack/webpack/issues/1599
    Ответ написан
    Комментировать
  • Можно ли мониторить нажатия клавиш в системе в nodeJs?

    duboloms
    @duboloms
    Люблю есть дубы с кетчупом. Веб-разработчик.
    ElectronJS, c ним можно создать desktop приложение на HTML CSS и JS а также он как раз с node работает отлично, просто в параметры окна electron, напиши:
    transparent: true, // прозрачность окна
    show: false // скрытие ярлыка программы с панели задач

    Если будешь использовать nodejs в непосредственно основном js файле (script.js, app.js, main.js, index.js), не забудь рассказать об этом electron'у:
    webPreferences: {
      nodeIntegration: true
    }


    А потом выхватывай key ( название клавиши, на которую нажал пользователь):
    document.addEventListener("keydown", e => { 
      if(e.key == "C"){
        console.log("нажал на C");
      }
    }); // также есть еще keypress и keyup
    Ответ написан
  • Как получить фотографию в рамке, как в ВК?

    duboloms
    @duboloms
    Люблю есть дубы с кетчупом. Веб-разработчик.
    Просто прочитай файл (картинку) которую тебе отправил пользователь.
    А в css:
    селектор элемента, где будет эта картинка {
      border-radius: 50%; // обрезаю картинку
    }
    Ответ написан
    Комментировать
  • Почему electron после каждого закрытия приложения очищает сессию?

    duboloms
    @duboloms
    Люблю есть дубы с кетчупом. Веб-разработчик.
    Чтобы твое приложение не работало в фоновом режиме (это нагружает компьютер)
    Ответ написан
    Комментировать