Size: a a a

2021 October 07

Y

Yexela in Angular Kyiv
Привет, может кто подскажет в чем проблема и как решить
Есть Angular 12, реактивная форма с <input type=“file”>, пытаюсь через cypress добавить файл в инпут, но по итогу значение в контроле -null
Не отрабатывает ангулярный ченж детекшин.
Какой ивент можно “пнуть” что бы ангуляр увидл файл в инпуте?
источник

DG

Danil Gudz in Angular Kyiv
а инпут тайп файл давно уже научился работать через ControlValueAccessor?
источник

VP

Valerii Petrenko in Angular Kyiv
Могу ошибаться и сейчас есть способ попроще, но когда я подобное делал, то cypress не умел с файлами через инпутами работать, где-то на форумах нашел такое рабочее решение:
1) в папку fixtures помещаете картинку (у меня это car.jpg),
2) в support/commands.js добаляете это
Cypress.Commands.add('upload_file', (fileName, fileType = ' ', selector) => {
   cy.get(selector).then(subject => {
       cy.fixture(fileName, 'base64')
           .then(Cypress.Blob.base64StringToBlob)
           .then(blob => {
               const el = subject[0];
               const testFile = new File([blob], fileName, { type: fileType });
               const dataTransfer = new DataTransfer();
               dataTransfer.items.add(testFile);
               el.files = dataTransfer.files;
           });
   });
});
3) в сам тест добавляем это
it('Should add picture', () => {

               const fileName = 'car.jpg';
               const fileType = 'image/jpeg';
               const fileInput = 'input#camera';

               cy.upload_file(fileName, fileType, fileInput);

               let input;

               cy.get('input#camera').should(ref => {
                   input = ref.get(0);

                   const event = document.createEvent('HTMLEvents');
                   event.initEvent('change', true, true);
                   event.eventName = 'change';
                   input.dispatchEvent(event);
               });

           });
Это решает проблему null в инпуте
источник

V

Vitalii in Angular Kyiv
Привіт!
Чуть в сторону від Angular.

Кому вдавалося заводити корисні знайомства через LinkedIn?

Я маю на увазі не так, що просто додали людину "Х" до My network і вона там роками "висить" і жодної комунікації між вами.
источник

PN

Pavel Nagornyuk in Angular Kyiv
Я так офер отримав)
источник

V

Vitalii in Angular Kyiv
Ну за отримати роботу я впевнений, багато людей писало. А ось завести нові корисні професійні відносини там - не знаю.
источник

Sergey Фrolov in Angular Kyiv
Ну может якщо писати по діло, то може
источник

Sergey Фrolov in Angular Kyiv
Головне щоб був інтерес
источник

V

Vitalii in Angular Kyiv
Ось з цим погоджуюся на 100%.
источник

Sergey Фrolov in Angular Kyiv
В нас її мало хто використовує як саме проф соц сіть
источник

V

Vitalii in Angular Kyiv
Я сумніваюся, що її взагалі використовують для нетворкінгу. Тобто може й додають у список "My network", але люди у ньому роками висисять без комунікації. Тобто це не знайомства, це просто мертві, нікому не потрібні списки...
источник

Sergey Фrolov in Angular Kyiv
Ну так. Але в США там як раз використовують для контактів
источник

V

Vitalii in Angular Kyiv
З власного досвіду знаєш?
источник

V

Vitalii in Angular Kyiv
Корисні знайомства можливі через LinkedIn?
Анонимный опрос
9%
Так (з власного досвіду знаю)
46%
Припускаю, що так
26%
Не знаю
20%
Швидше ні
Проголосовало: 35
источник

Sergey Фrolov in Angular Kyiv
Ну не. Це скоріш з історій знайомих там
источник

V

Vitalii in Angular Kyiv
Причина, чому ті списки мертві, у тому, що колеги просто так не народжуюся. Треба познайомитися, треба комунікувати один з один, треба передавати досвід, знання, треба дружити, якщо одним словом.

Саме тому припускаю, що у чатах в Телеги швидше подружишся з кимось, ніж навіть лайкаючи і коментуючи чиїсь пости в Лінкедіні. Погоджуєтеся?
источник

Y

Yexela in Angular Kyiv
К сожалению это не работает
источник

DG

Danil Gudz in Angular Kyiv
Так а откуда инфа в принципе что инпут тайп файл работает в ангуляре с моделью? Под него ж не написана директива в @angular/forms
источник

Y

Yexela in Angular Kyiv
Да просто в проете это реализовано через FormGroup 🤷‍♂️
источник

DG

Danil Gudz in Angular Kyiv
Ну насколько я знаю тайп форм с ngmodel/formcontrol не работает, надо слушать change, и доставать файл из target.files и вписывать руками в контрол, ну или директиву написать которая это будет делать
источник