Size: a a a

2020 October 13

AP

Alexander Popov in JS for testing
только лучше его не юзать...
источник

OK

Oleksandr Khotemskyi in JS for testing
я бы не парился
источник

AC

Andrew Chzhen in JS for testing
котлин транслируется в js интерестно во что би его конструкция apply конвертнулась
но онлайн конвертора нема да и скорее всего ни во  что хорошее оно не скомпилится
источник

OK

Oleksandr Khotemskyi in JS for testing
и так вполне читаемо
источник

AC

Andrew Chzhen in JS for testing
Oleksandr Khotemskyi
я бы не парился
та я уже тоже почти забил
источник

AB

Alexei Barantsev 🗹... in JS for testing
а вообще-то всё это выглядит как зверское нарушение инкапсуляции
источник

AP

Alexander Popov in JS for testing
Andrew Chzhen
а как улучшить такой код? -
       createEngineTab.$title.setValue(title)
       createEngineTab.$description.setValue(description)
       createEngineTab.$url.setValue(url ? url : '')
       createEngineTab.$engineType.select(engineType)
       createEngineTab.$engineProfile.select(engineProfile)
       createEngineTab.$timeZone.select(timezone)
       createEngineTab.$nextButton.click()
то есть есть у нас обджет на котором ми виполняем какие-то действия
сразу вспомнил как в котлине такое зарулили с помощью apply -
createEngineTab.apply {
title.setValue(title)
engineType.select(engineType)
...
nextButton.click()
}
есть ли такое в js или как еще можно?
а чего не сделать createEngineTab.fill({title, url, description}) ?
источник

AC

Andrew Chzhen in JS for testing
Alexander Popov
у джс тоже такое есть, with называется
хм интеречтно
источник

AP

Alexander Popov in JS for testing
а что там внутри то уже такое
источник

AC

Andrew Chzhen in JS for testing
Alexander Popov
а чего не сделать createEngineTab.fill({title, url, description}) ?
ну то есть етот код будет разбит
источник

AP

Alexander Popov in JS for testing
не разбит, а спрятан
источник

AP

Alexander Popov in JS for testing
я просто не перечислил все
источник

AB

Alexei Barantsev 🗹... in JS for testing
Alexander Popov
а чего не сделать createEngineTab.fill({title, url, description}) ?
а вот так не будет выглядеть, как нарушение инкапсуляции, да :)
источник

B

Bola in JS for testing
Alexander Popov
а что там внутри то уже такое
а внутри = тоже будет коробить человека
this.$title.setValue(title)
this.$description.setValue(description)
this.$url.setValue(url ? url : '')
this.$engineType.select(engineType)
this.$engineProfile.select(engineProfile)
this.$timeZone.select(timezone)
this.$nextButton.click()
источник

AP

Alexander Popov in JS for testing
Bola
а внутри = тоже будет коробить человека
this.$title.setValue(title)
this.$description.setValue(description)
this.$url.setValue(url ? url : '')
this.$engineType.select(engineType)
this.$engineProfile.select(engineProfile)
this.$timeZone.select(timezone)
this.$nextButton.click()
а в чем проблема?
если у тебя 50 полей то будет 50 строк
источник

AP

Alexander Popov in JS for testing
можно начать выдумывать типа итераций по полям, но все понимают чем это кончится
источник

B

Bola in JS for testing
ну одно заменили другим )
источник

BO

Boris Osipov in JS for testing
да вообще проблемы нет. код как код. больше раздражает $ перед каждым полем
источник

B

Bola in JS for testing
все равно внутренний перфекционизм автора вопроса будет страдать
источник

AP

Alexander Popov in JS for testing
Bola
ну одно заменили другим )
не заменили, а закрыли абстракцией,а что внутри нее - похер
источник