Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (13)

Лучшие ответы пользователя

Все ответы (10)
  • Как научиться создавать сайты, если в программировании полный 0?

    @nickerlan
    Для начала нужно цель прояснить и срок. Если просто быстро сайтики собирать научиться - то рекомендую сначала с tilda.cc поиграться, потом с webflow.io. Их по крайней мере с нуля быстро можно освоить. И наверное это тоже можно назвать программированием.

    Если же цель - достичь хорошего уровня, то нужно уже профессиональные инструменты осваивать.
    Я бы взял как программу минимум HTML, CSS, JS, NodeJS, React, Mongo. Подача мне вот тут нравится https://codedojo.ru/
    Еще, на базовом уровне алгоритмы хорошо бы изучить. Понять какие бывают структуры данных. Поиграться с функциональным и объектно ориентированным программированием.

    Как бы я построил обучение.
    Я бы выбрал проект, который хочется довести до конца. Реальную задачу.
    И начал бы просто ее делать. Задавая вопросы гуглу, здесь или знакомым программистам. Садится, писать, пробовать и до победного.

    И параллельно решал бы задачи, начиная с простых. Тут список сайтов где можно тренироваться https://tproger.ru/digest/competitive-programming-...
    Ответ написан
    Комментировать
  • Как сделать так, что бы высота блоков была одинаковая?

    @nickerlan
    Для горзонтальных flexbox: просто {display:flex} на родительском контейнере
    Для вертикальных css grid. {display:grid; grid-template-rows:"1fr 1fr 1fr"} на родительском контейнере
    Ответ написан
    2 комментария
  • Как присвоить один и тот же class элементам с одинаковым значением data?

    @nickerlan
    "Автоматом" не получится - нужен как минимум обработчик события, в какой момент осуществлять такую проверку.
    Не очень просто сценарий понятен - как там active появился. Если при клике, то имеет смысл туда повесить что-то в духе
    document.querySelectorAll('[data-item='+e.target.getAttribute('data-item')+']')
          .forEach(liActive=> 
            {liActive.className='active'})


    Если же проверку нужно в какой то другой момент осуществить для всех, то примерно так будет:

    document.querySelectorAll('[data-item]').forEach(liElem=>{
      if(liElem.className==='active')){
        document.querySelectorAll('[data-item='+liElem.getAttribute('data-item')+']')
          .forEach(liActive=> 
            {liActive.className='active'})
      }
    }
    Ответ написан
    1 комментарий
  • Как скрыть Api Key при ajax запросе?

    @nickerlan
    Если это стороннее API, с которого надо вытащить данные - сделать прослойку на бекэнде (на NodeJS или PHP), которая цепляет находясь на Вашем сервере и зная ключ, все что надо, а потом уже отдает клиенту.

    Если это свое API, то ключ стоит воспринимать как логин-пароль этого конкретного пользователя, а потому скрывать его от него же смысла никакого нет.

    PHP - простой вариант для прослойки.
    Но у вопроса тег JS, на JS тоже можно, и если не хотите возиться с серверами для этого, можете попробовать now.sh, есть бесплатная версия https://zeit.co/examples/nodejs/

    1. Установите now
    2. Создадите простой код вроде этого:
    const {send} = require('micro')
    const axios = require('axios')
    
    module.exports = async (req, res) => {
      var result = await axios.post(API_LINK,{token:SECRETTOKEN}).then(d=>d.data))
      send(res,200,result);
    };

    Рядом файл now.json
    {
        "version": 2,
        "name": "nodejs",
        "builds": [
            { "src": "*.js", "use": "@now/node" }
        ]
    }

    А потом в консоли из той же папки:
    npm init -y && npm install axios micro --save && now

    Ссылка на скрипт появится в буфере обмена
    Ответ написан
    3 комментария

Лучшие вопросы пользователя

Все вопросы (15)