Slide 60
Slide 60 text
SIROK, Inc.
コンポーネント呼び出しのインタフェースが分かりやすくなった
Before: どのように呼び出すべきかはerbをすべて読まないと分からない
After: コンストラクタを見れば分かる
複雑なビューであっても一目でパラメータを把握できる
class Partials::Sirok::Media::Ads::Contents::Components::Component < ViewComponent::Base
include OptimizeHelper
include ViteHelper
def initialize(components: nil, orders: nil, model: nil, extra: nil, replaced_link: nil, lazy_load: nil, is_content_editable: nil,
survey_redirect_paths: nil, product_id: nil, type: nil, campaign: nil, campaign_user: nil, order: nil, is_preview: nil, is_lazy: nil,
amazon_pay_redirect_path: nil, ad: nil, upsell_impression: nil, store_types: nil, stores: nil, coordinates: nil, marker_data: nil, direct_captureable:
nil)
# ...略...
end
end
60
あまり良い実装ではないが、とてつもなくパラメータの多い複雑なビュー…。