Задать вопрос
  • Почему у Москвы в разные года разное смещение по времени GMT?

    Да, это нормально, тк до 2012 года был переход на летнее время, которое потом отменили
    Ответ написан
    5 комментариев
  • В чем отличие markAsDirty и markAsTouched в Angular?

    Xuxicheta
    @Xuxicheta Куратор тега Angular
    инженер
    В Angular в ReactiveForm одному контролу из формы я задаю значение через .setValue(someValue)

    Внутри любого метода меняющего форму или ее значение есть updateValueAndValidity.
    Как я понимаю, чтобы после этого запустился процесс валидации установленного значения, нужно выполнить у этого же контрола методы markAsDirty() и markAsTouched()

    Нет, эти методы всего лишь флаги меняют, dirty и pristine соответственно. И к процессу валидации никак не относятся.
    Какая между ними разница и когда какой использовать?

    нy по назначению, dirty это когда форма менялась, touched это когда на контроле был фокус и пропал.
    Ответ написан
    Комментировать
  • Rxjs как сделать последовательно два http запроса?

    nasnetstep
    @nasnetstep Автор вопроса
    Вообщем я нашел ответ сам, может кому-то пригодится
    flatMap и forkJoin

    // последовательно
    
    let someStream$ = service.getData().flatMap(res => {
      return service.deleteData(res)
    })
    
    someStream$.subscribe(res => {
       // res - результат последнего 
    })
    
    // параллельно
    let getData$ = service.getData();
    let deleteData$ = service.deleteData();
    
    Observable.forkJoin([getData$, deleteData$]).subscribe(results => {
          // results[0] дата из getData$
          // results[1] дата из deleteData$
          this.a = results[1];
          this.b = results[0];
        });
    Ответ написан
    Комментировать
  • Почему JS матчит обратный апостроф в регулярке?

    Alexandroppolus
    @Alexandroppolus
    кодир
    [А-Я]
    тут буква А - латинская, в интервале между латинской А и русской Я много чего. Проверь буквы.
    Ответ написан
    4 комментария
  • Почему Nuget автоматически устанавливается из ненадежного репозитория?

    @MaxKozlov Куратор тега PowerShell
    Просто все репозитории, даже дефолтный PSGallery, по умолчанию не надёжные.
    Сделайте его надёжным, чтобы лишних вопросов не возникало.

    Посмотреть инфу о нём, в том числе URL
    Get-PSRepository
    Сделать надёжным
    Set-PSRepository -Name PSGallery -InstallationPolicy Trusted

    Кстати, PackageManagement и PowerShellGet тоже лучше обновить.
    Ответ написан
    Комментировать
  • Можно ли и как изменить исходящий запрос в DevTools?

    DevMan
    @DevMan
    Ответ написан
    Комментировать
  • Можно ли и как изменить исходящий запрос в DevTools?

    vabka
    @vabka Куратор тега Веб-разработка
    Нет, нельзя.
    Можно только при помощи дополнительного софта, например: Fiddler, Mitmproxy, Charles
    Ответ написан
    5 комментариев
  • Куда делось свойство word-wrap?

    RAX7
    @RAX7

    The property was originally a nonstandard and unprefixed Microsoft extension called word-wrap, and was implemented by most browsers with the same name. It has since been renamed to overflow-wrap, with word-wrap being an alias.

    https://developer.mozilla.org/en-US/docs/Web/CSS/o...
    Ответ написан
    Комментировать
  • Как вы боретесь с удалением папок node_modules в Windows?

    SynCap
    @SynCap
    Делаю интернет с 1998 года
    Тема в интернетах давно и широко освещаема, народ давно прикурил, что не все так просто, как кажется на первый взгляд, и нет "серебряной пули".

    `RimRaf` - хорошо, но не очень: использовать можно либо из скрипта, либо вручную на каждый проект, т.е. перед массовым бэкапом можно использовать лишь в составе некое "подготовительного" инструмента. И таки да - есть проблемы на разных конкретных конфигурациях. "Platform independence" не получился. По сути тех же результатов можно получить делая `rm -rf node_modules` в оболочке `bash` или `rmdir /S node_modules` в `cmd`, причем `rmdir` в большинстве случаев не вспомнит про длину строки, даже если для этого есть поводы.

    `npm dedupe` - тоже очень хорошо, но также не очень. Это неплохо делать в каждом проекте после `install` или после каждого изменения зависимостей. В противном случае перекур на сутки - просто гарантирован.

    1.

    Если доступна оболочка Bash на основе CygWin (если пользуетесь Git, скорее всего она - оболочка баша - есть, но не факт) решение, которое лежит на поверхности:

    find . -name "node_modules" -exec rm -rf '{}' +

    плюсик в конце - так надо: автоматом подтаскивает завершение (перевод) строки, можно заменить на \;

    Попадался и такой вариант:

    #!/bin/bash
    
    delete-all-dep-folders() {
      # `-prune` prevents building up lists of `node_modules` inside `node_modules`
      find ${1:-.} -type d -name "node_modules" -prune -exec rm -rf '{}' \; -exec echo 'Deleted {}' \;
      find ${1:-.} -type d -name "bower_components" -prune -exec rm -rf '{}' \; -exec echo 'Deleted {}' \;
    }


    После запуска скрипта (можно просто скопипастить в окошко баша) можно без параметров запустить команду `delete-all-dep-folders` в нужной папке или первым параметром задать путь:

    $ delete-all-dep-folders /path/to/project-root

    Напомню: если `bash` под cygwin, только тогда ему плевать на длину пути. Насколько это так, вы должны знать сами - где и какую версию Гита/Баша вы брали, там и надо читать: в интернетах найдется куча версий баша, скомпилированных с использованием нативных библиотек Windows, которые не используют cygwin!!!

    2.

    PowerShell. Якобы та самая "серебрянная пуля" от МелкоСофт. Вроде бы, плевать он хотел на длину пути. Якобы.

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

    Вариант:

    Get-ChildItem -Path "." -Include "node_modules" -Recurse -File:$false  | Get-ChildItem -Recurse | Remove-Item -Recurse  -Force


    Вполне рабочий, НО версия PowerShell >4.0. Более старые версии даже с ключом `-Force` не могут удалить НЕпустые папки.

    Уточню: несмотря на то, что Remove-Item (он же del, он же ...) имеет возможность обозначать фильтры и работать рекурсивно, тем не менее необходимость конвейера (знак палки между командами) все-таки есть, и на эти грабли наступало уже очень много народу еще до того, как на ms-tech и в документации была признано и отмечено, что таки да, проблема есть и в качестве решения предлагается использовать конвейер, т.е. – через палку надо делать, и не делать тупо Delete.

    И таки да, я нарвался на случай, когда это не сработало - на USB диске (NTFS) лежал старый проект на `Meteor`. Актуальности никакой, для истории тоже не находка, но он единственный усиленно сопротивлялся 4 с лишним часа. После чего мне надоело доискиваться причин такой стойкости и старый (честно купленный еще в прошлом веке) добрый Total Commander справился со всем проектом полностью за 1.897s.

    3.

    Победитель конкурса - Total Commander с настройками дисковых операций с помощью собственных (НЕ системных) функций. Не верьте документации: Windows, начиная с Vista, выполняет при дисковых операциях значительно больше "левых" действий для красоты, чем Commander, посему операции "его" функциями выполняются быстрее, чем "её" функциями. Совсем хорошо, если отключить в командере поддержку файлов описаний содержимого каталогов. Также, когда-то давно, мне попадался на глаза подключаемый модуль для командера, который заменял/дополнял поиск файлов на другой, в котором используется другая библиотека для работы с регулярными выражениями и дисковые операции можно выполнять сразу над результатами поиска без перекладывания во временную панель.

    4.

    Или мы не программисты? Пишем свой велосипед по рекурсивному обходу каталогов и `rimraf`-им чего надо. При этом не забываем положить сей золотой ключик отдельно, чтобы мимоходом не прибить его зависимости, и делаем для него консольный вызов. Успешно выкладываем в NPM и собираем звезды на Гитхабе. Дерзайте, а я настоящий программист, мне - лень, когда все просто и понятно :)
    Ответ написан
    Комментировать
  • Как вы боретесь с удалением папок node_modules в Windows?

    AMar4enko
    @AMar4enko
    После установки зависимостей в проект делаете
    $ npm dedupe
    $ npm shrinkwrap

    dedupe приводит дерево npm-зависимостей к максимально плоскому виду
    Ответ написан
    1 комментарий
  • Курсор ввода в любом месте окна браузеров?

    rus0nix
    @rus0nix
    Admin
    Видимо вы нажали клавишу F7 в Microsoft Edge.
    5b549528da25f774201802.jpeg
    Нажмите опять эту клавишу для отключения.
    Ответ написан
    20 комментариев
  • Как сделать снимок системы в macOS?

    fedorez
    @fedorez
    Хатуль мадан
    1) встроенная Time Machine делает инкрементальные бэкапы
    2)в терминале
    cd "/Volumes/Backup Disk/Backups.backupdb/Vova's Mac"
    tmutil compare 2020-05-27-105117 2020-04-26-334525

    приложение Терминал должно иметь доступ System Preferences > Security & Privacy > Privacy > Full Disk Access
    Ответ написан
    4 комментария
  • Как настроить пробелы между скобок в WebStorm?

    @kacheleff
    fullstack developer
    Editor -> Code Style -> JavaScript -> Spaces -> Within -> ES6 import/export braces
    5d4fd18fcb78e680478660.png
    Ответ написан
    1 комментарий
  • Что означает приставка document: при прослушке событий и где про это почитать?

    joeberetta
    @joeberetta
    Читай: https://epdf.pub/google-for-dummies.html
    Проблема в том, что если я прослушиваю просто 'keyup' или 'keydown' (либо 'keyup.ArrowLeft' и 'keyup.ArrowRight'), то написанная логика не работает.

    Все верно, потому что события нажатия клавиш биндятся ко всему документу, а не какому-то конкретному дом узлу.

    Собственно приставка 'document:' означает, что данный метод будет прослушивать глобальные события, а не события конкретного элемента

    Тут был задан другой вопрос, но в ответе объясняется что это и как оно работает

    P.s. вопрос относится больше к Angular, добавьте тег к вопросу
    Ответ написан
    Комментировать
  • RxJS - Как правильно делать отписки на Subscriber объект?

    dasha_programmist
    @dasha_programmist
    ex Software Engineer at Reddit TS/React/GraphQL/Go
    Стоит помнить разницу между Observable и Subject, соответственно subscribe у этих двух типов работает в части создания подписок по разному. Если закрывать весь стрим, то достаточно вызвать complete. Если нужно получить значение и отписаться то можно вызвать .first().subscribe(). Если создаются долгоживущие подписки, то их можно складывать в массив, а в дестрой вызывать subscriptions.forEach(i=>i.unsubscribe())

    UPD: уточни бизнес-кейс, у меня подозрение что тут subject не нужен и можно обойтись new Observable((subs)=>{})
    Ответ написан
    1 комментарий
  • Где посмотреть примеры архитектур/связей БД?

    @somenkoea
    PHP программист (Symfony)
    Здесь очень много примеров:
    www.databaseanswers.org/data_models
    Ответ написан
    Комментировать
  • Поле signature это публичный ключ?

    CityCat4
    @CityCat4 Куратор тега Цифровые сертификаты
    //COPY01 EXEC PGM=IEBGENER
    Есть разные виды защиты информации.

    Есть электронная подпись. Есть шифрование. Есть комбинация этих вещей - она как правило применяется для защиты электронной почты.
    Электронная подпись ничего не шифрует. Она вычисляет сигнатуру текста и помещает эту сигнатуру в передаваемое сообщение. Проверив эту сигнатуру, Вы можете убедиться в том, что текст без изменений (то есть что в процессе передачи его он не был искажен).
    Шифрование изменяет текст документа, превращая его в нечитаемую байду.
    Электронная подпись шифрованного текста позволяет убедиться, что текст будет успешно расшифрован.
    Ответ написан
    Комментировать
  • Где посмотреть примеры архитектур/связей БД?

    @Barmunk
    https://drawsql.app/templates

    Collection of real world database schemas from open-source packages and real-world apps that you can use as inspiration when architecting your app.


    На любой вкус.
    Ответ написан
    Комментировать
  • Где посмотреть примеры архитектур/связей БД?

    @grebenyukov
    Ищите по ключевому слову IDEF1X. Результатов с объяснениями и примерами масса, в т.ч., на русском. Все тут не перечислить.
    Ответ написан
    Комментировать