• Почему не запускается локальный сервер Django?

    Lapita12
    @Lapita12
    scryi,
    Если при выполнении команды python -m venv myvenv вы снова получаете ответ python, то это может быть связано с тем, что переменная среды PATH настроена неправильно или не была настроена вообще.
    Для решения этой проблемы можно сделать следующее:

    1. Убедитесь, что путь к каталогу с Python добавлен в переменную среды PATH. Это можно сделать следующим образом:

    В Windows 10:
    - Откройте "Панель управления".
    - В поисковой строке наберите "Система".
    - Выберите пункт "Дополнительные параметры системы".
    - В открывшемся окне "Свойства системы" выберите вкладку "Дополнительно" и нажмите кнопку "Переменные среды".
    - Найдите переменную "Path" в списке "Системные переменные" и нажмите на кнопку редактирования.
    - Если путь к Python не указан в переменной PATH, добавьте путь к папке с Python. Не забудьте разделить пути точкой с запятой (;).

    В Windows 7:
    - Откройте "Панель управления".
    - Выберите пункт "Система".
    - В левой части окна выберите "Дополнительные параметры системы".
    - В открывшемся окне "Свойства системы" выберите вкладку "Дополнительно" и нажмите кнопку "Переменные среды".
    - Найдите переменную "Path" в списке "Системные переменные" и нажмите на кнопку редактирования.
    - Если путь к Python не указан в переменной PATH, добавьте путь к папке с Python. Не забудьте разделить пути точкой с запятой (;).

    2. Если это не помогло, попробуйте выполнить запуск Python с помощью команды py, а не python:

    py -m venv myvenv


    myvenv\Scripts\activate


    python manage.py runserver


    Эти шаги могут помочь исправить проблему с выполнением команды python.
  • Почему не запускается локальный сервер Django?

    Lapita12
    @Lapita12
    scryi, Проверьте и напишите мне об ваших результатах.
    Буду ждать
  • Почему цифры не переводятся в строки?

    Lapita12
    @Lapita12
    supkiler,
    Проблема заключается в том, что JavaScript преобразует числа в строки только при конкатенации со строками, а вы пытаетесь сконкатенировать числа между собой.
    Если вам нужно получить строку 1+1 вместо числа 2, для этого вы можете использовать шаблонную строку (template string), в которой сложение будет выполняться как текст, а не как математическая операция
    console.log(`${1+1}`);
    // Вывод в консоль: "2"
    // Обратите внимание на обратные кавычки вокруг выражения 1+1
    
    console.log(`${1}+${1}`);
    // Вывод в консоль: "1+1"
    // Здесь мы разбиваем выражение на две части и использовали шаблонную строку, чтобы конкатенировать их как текст


    Чтобы преобразовать результат в массив, вы можете использовать метод split:
    console.log(`${1}+${1}`.split(''));
    // Вывод в консоль: ["1", "+", "1"]
    // Мы использовали метод split, чтобы разбить строку на массив символов


    Теперь вы можете использовать этот код в вашей функции run чтобы получить строку "1+1" вместо числа 2:
    function run(string) {
        string = `${string}`;
        return string.split('');
    }
    
    console.log(run(1+1));  // ["1", "+", "1"]


    В этой функции мы используем шаблонную строку ${string} для преобразования числа в строку, а затем разбиваем строку на массив символов.
  • Почему ругается консоль на библиотеку alwan JS при подключение к Wordpress?

    Lapita12
    @Lapita12
    Ошибка в консоли могла возникнуть по нескольким причинам. Одна из возможных причин - неправильное использование библиотеки alwan.js с WordPress.

    Проверьте, совместима ли версия библиотеки alwan.js с вашей версией WordPress. Также убедитесь, что вы правильно подключили файл alwan.js. Судя по вашему коду подключения, файл alwan.min.js.map не нужно подключать к сайту, так как это файл для отладки и карты кода.

    Возможно, вам также потребуется включить опцию "Не типизировать код" (Don't type check code) в конфигурации alwan.js. Эта опция указывает alwan.js не проверять типы переменных и свойств, что может устранить ошибки, связанные с различием версий и прочих типовых проблем.

    Также вы можете попробовать подключить библиотеку alwan.js через CDN-сервер, чтобы избежать ошибок связанных с локальным хранением библиотеки.
  • Почему не выводятся данные из запроса в заголовок?

    Lapita12
    @Lapita12
    Дмитрий Ярощук,
    Этот код представляет собой функциональный компонент React с использованием хуков useState и useEffect.

    Хук useState используется для хранения данных о погоде. useState возвращает массив из двух элементов: переменной и функции для ее обновления. Эти переменная и функция передаются в состояние компонента.

    Хук useEffect позволяет выполнять эффекты (например, перерисовать компонент) каждый раз, когда происходят изменения. В случае этого компонента useEffect выполняет запрос к API OpenWeatherMap с переданным в качестве аргумента названием города, которое получает из props. Когда компонент монтируется и меняется название города, useEffect вызывается и обновляет данные.

    Если данные о погоде еще не получены, то компонент возвращает разметку Loading... Для рендеринга данных используется деструктуризация переменных name, main, weather, wind, после чего затемнения данных выводятся в тегах разметки "h1", "p" и "img".

    Важно заметить, что заполнить YOUR_APP_ID своим ключом API OpenWeatherMap.
  • Почему не выводятся данные из запроса в заголовок?

    Lapita12
    @Lapita12
    В основном ответе.
    Проблема заключается в том, что я попытался возвращать JSX-разметку из асинхронной функции. Это не работает так.
    Кроме того, жестко задали город в строке запроса, а должны передавать его в качестве аргумента при вызове функции.
  • Почему не выводятся данные из запроса в заголовок?

    Lapita12
    @Lapita12
    Lapita12,
    В вызове функции installWeather не передается никаких данных. Следует передать данные в качестве аргумента при вызове функции, например:

    installWeather({ data: { name: 'Lviv' } })


    Также, в запросе данный город жестко задан: https://api.openweathermap.org/data/2.5/weather?q=.... Если вы хотите передать название города динамически, то его нужно передавать в запросе.
  • Почему не выводятся данные из запроса в заголовок?

    Lapita12
    @Lapita12
    Lapita12,

    import React, { useState, useEffect } from 'react';
    
    function InstallWeather(props) {
      const [weatherData, setWeatherData] = useState(null);
    
      useEffect(() => {
        fetch(`https://api.openweathermap.org/data/2.5/weather?q=${props.city}&units=metric&appid=YOUR_APP_ID`)
          .then(response => response.json())
          .then(data => setWeatherData(data))
          .catch(error => console.log(error));
      }, [props.city]);
    
      if (!weatherData) {
        return <div>Loading...</div>;
      }
    
      const { name, main, weather, wind } = weatherData;
      const { temp, humidity, pressure } = main;
      const { description, icon } = weather[0];
      const imgUrl = `http://openweathermap.org/img/w/${icon}.png`;
      const windSpeed = wind.speed;
      const windDegree = wind.deg;
    
      return (
        <div className="wrapper">
          <div className="container">
            <h1 className="place" id="place">City: {name}</h1>
            <p className="temp" id="temp">Temperature: {temp}&deg;C</p>
            <p className="pressure" id="pressure">Pressure: {pressure} hPa</p>
            <p className="description" id="description">Description: {description}</p>
            <p className="humidity" id="humidity">Humidity: {humidity}%</p>
            <p className="speed" id="speed">Wind speed: {windSpeed} m/s</p>
            <p className="degree" id="degree">Wind degree: {windDegree}&deg;</p>
            <img className="image" id="image" src={imgUrl} alt="Weather" title="Weather"/>
          </div>
        </div>
      );
    }
    
    export default InstallWeather;


    Исправлена ошибка в моём первом варианте ввиде ответа, попробуйте сразу оба
  • Почему не выводятся данные из запроса в заголовок?

    Lapita12
    @Lapita12
    Дмитрий Ярощук,
    import React, { useState, useEffect } from 'react';
    
    function InstallWeather(props) {
      const [weatherData, setWeatherData] = useState(null);
    
      useEffect(() => {
        fetch(`https://api.openweathermap.org/data/2.5/weather?q=${props.city}&units=metric&appid=YOUR_APP_ID`)
          .then(response => response.json())
          .then(data => setWeatherData(data))
          .catch(error => console.log(error));
      }, [props.city]);
    
      if (!weatherData) {
        return <div>Loading...</div>;
      }
    
      const { name, main, weather, wind } = weatherData;
      const { temp, humidity, pressure } = main;
      const { description, icon } = weather[0];
      const imgUrl = `http://openweathermap.org/img/w/${icon}.png`;
      const windSpeed = wind.speed;
      const windDegree = wind.degree;
    
      return (
        <div className="wrapper">
          <div className="container">
            <h1 className="place" id="place">City: {name}</h1>
            <p className="temp" id="temp">Temperature: {temp}&deg;C</p>
            <p className="pressure" id="pressure">Pressure: {pressure} hPa</p>
            <p className="description" id="description">Description: {description}</p>
            <p className="humidity" id="humidity">Humidity: {humidity}%</p>
            <p className="speed" id="speed">Wind speed: {windSpeed} m/s</p>
            <p className="degree" id="degree">Wind degree: {windDegree}&deg;</p>
            <img className="image" id="image" src={imgUrl} alt="Weather" title="Weather"/>
          </div>
        </div>
      );
    }
    
    export default InstallWeather;


    Убедитесь что вы заменили YOUR_APP_ID на свой API OpenWeatherMap
  • Как изменить переменную в useEffect?

    Lapita12
    @Lapita12
    lena_tihonova_bl,
    Проблема в том, что вы вызываете setElements внутри useEffect, который запускается при каждом рендере компонента. Вы запускаете цикл, который собирает массив newElements, а затем сразу вызываете setElements и передаете ему это массив. В результате компонент рендерит эти элементы до того, как newElements заполнен. И когда newElements заполнен, вы вызываете setElements, которое снова вызывает перерендеринг компонента, и так происходит бесконечно, что вызывает ошибку.

    Чтобы исправить эту проблему, вы можете вынести создание массива newElements из useEffect, а затем передавать его в setElements. Таким образом, setElements будет вызываться только один раз при загрузке компонента.
    import React, { useState, useEffect } from 'react'; 
    
    function App() {
      const [elements, setElements] = useState([]);
    
      const data = { data: ['file1', 'file2', 'file3'] };
      const newElements = [];
    
      useEffect(() => {
        for (let i = 0; i < data.data.length; i++) {
          newElements.push(<Uploaded_file button_name={data.data[i]} key={i}></Uploaded_file>);
        }
        setElements(newElements);
      }, []);
    
      return (
        <div>
          {elements}
        </div>
      );
    }
    
    export default App;



    Обратите внимание, что я переместил объявление data и newElements за пределы useEffect. Также я передаю [] в качестве зависимостей для useEffect, чтобы он запустился только один раз при загрузке страницы.
  • Как остановить скролл на последнем фрейме?

    Lapita12
    @Lapita12
    Это может быть вызвано тем, что код прокрутки генерирует и устанавливает новый CSS-атрибут каждый раз при прокрутке, и этот процесс может вызвать дрожание и возврат на место.

    Попробуйте изменить код таким образом, чтобы он устанавливал CSS-атрибуты только в самом начале прокрутки и не более одного раза.

    Например, вы можете вынести установку CSS-атрибутов из функции-обработчика прокрутки в отдельную функцию, которая будет вызываться только один раз при загрузке страницы. Затем функция-обработчик прокрутки может просто изменять значения заранее установленных атрибутов для каждого кадра.

    let zSpacing = -1000;
    let lastPos = zSpacing / 5;
    let $frames = document.getElementsByClassName('frame');
    let frames = Array.from($frames);
    let zVals = [];
    
    const lastFrame = $frames[$frames.length - 1];
    const lastFrameHeight = lastFrame.offsetHeight;
    const lastFrameTop = lastFrame.offsetTop;
    
    // функция для установки начальных CSS-атрибутов
    function setInitialStyles() {
      frames.forEach(function(n, i) {
        zVals.push((i * zSpacing) + zSpacing);
        let transform = `translateZ(${zVals[i]}px)`;
        let opacity = 0;
        if (zVals[i] < Math.abs(zSpacing) / 1.8) {
          opacity = 1;
        }
        frames[i].setAttribute('style', `transform: ${transform}; opacity: ${opacity};`);
      });
    }
    
    // вызываем функцию установки начальных CSS-атрибутов
    setInitialStyles();
    
    window.onscroll = function() {
      let top = document.documentElement.scrollTop;
      let delta = lastPos - top;
      lastPos = top;
      frames.forEach(function(n, i) {
        zVals[i] += delta * -5.5;
        let transform = `translateZ(${zVals[i]}px)`;
        let opacity = 0;
        if (zVals[i] < Math.abs(zSpacing) / 1.8) {
          opacity = 1;
        }
        frames[i].setAttribute('style', `transform: ${transform}; opacity: ${opacity};`);
      });
      if (top + window.innerHeight >= lastFrameTop + lastFrameHeight) {
        window.scrollTo(0, lastFrameTop);
      }
    };
    
    window.scrollTo(0, 1);
    
    let soundbutton = document.querySelector('.soundbutton');
    let audio = document.querySelector('.audio')
    
    soundbutton.addEventListener('click', e => {
      soundbutton.classList.toggle('paused')
      audio.paused ? audio.play() : audio.pause()
    });
    
    window.onfocus = function() {
      soundbutton.classList.contains('paused') ? audio.pause() : audio.play()
    };
    
    window.onblur = function() {
      audio.pause()
    };
  • Как остановить скролл на последнем фрейме?

    Lapita12
    @Lapita12
    Fox 777,
    Спасибо за предложение, но в коде, который вы предоставили, проблема скорее всего не связана с CSS. Возможно, ошибка связана с логикой изменения значений переменных zVals и lastPos.

    Я рекомендую добавить console.log внутри функции обработчика события onscroll, чтобы проверить, какие значения используются при каждом скроллинге. Также стоит проверить, работает ли код без использования переменной delta. Кроме того, можете попробовать использовать window.requestAnimationFrame вместо обычного обновления стилей для улучшения производительности.

    К сожалению, без доступа к полному коду и HTML разметке я не могу дать более точного ответа.