web-standards-ru / dictionary

Словари по фронтенду
Creative Commons Attribution Share Alike 4.0 International
2.18k stars 600 forks source link

props #365

Open SelenIT opened 6 years ago

SelenIT commented 6 years ago

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

timmarinin commented 6 years ago

Пропы никогда не слышал, всегда только пропсы.

Cf. джинсы

skip405 commented 6 years ago

Если брать во внимание, что в статье часто будут фигурировать два слова рядом - state и props, то переводя первое как состояние не сильно хочется (как по мне) переводить второе как пропсы, даже если так говорят.

В официальной документации они описываются, как arbitrary inputs, что вполне позволяет нам переводить их просто как [входные | внешние ]данные.

Насколько помню материалы по теме, то со словом props используется именно accept, то есть не a component may *have* props, а a component may *accept* props, что вполне можно переводить как компонент может принимать на вход данные.

SelenIT commented 6 years ago

Вариант входные данные понравился! Интересно, что в официальной (?) русской версии документации по Vue их перевели как входные параметры. А вот в русскоязычных материалах по Реакту из топа гуглопоиска почему-то попадаются или «свойства», или вообще без перевода.

skip405 commented 6 years ago

Можно предположить, что props - это сокращение от properties, отсюда и свойства. Просто с accept их сложновато увязать, как мне кажется.

SelenIT commented 6 years ago

Я тоже буквально до вчерашнего дня считал, что это сокращение, но, оказывается, есть и самостоятельное слово prop — «реквизит, бутафория» либо «подпорка» (первое действительно восходит к property, а второе — к староголландскому proppe).

lex111 commented 6 years ago

Можно предположить, что props - это сокращение от properties, отсюда и свойства

На самом деле так и есть https://reactjs.org/docs/faq-state.html#what-is-the-difference-between-state-and-props

props (short for “properties”)

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

skip405 commented 6 years ago

В реальной жизни «свойства» — это особенности какого-то объекта, то есть его характеристики какие-то, они присутствуют в этом самом объекте изначально. В случае же с реактом, пропсы не являются какими-то внутренними особенностями, они передаются ему извне. Поэтому хоть «свойства» — это и верный вариант перевода слова properties, оно не особо передаёт суть слова props. Особенно если учесть, что внутреннее состояние компонента называется state, которое (хоть и с натяжкой) можно кое-как «свойствами» считать.