코딩에 익숙하지 않지만, DRY에 대해 읽고 있었으므로 자신을 반복하지 마십시오.javascript - dry - nested if 문
DRY 접근 방식에 맞지 않는 JavaScript if/else 문이 있지만 내용을 반복하지 않도록 JavaScript if/else 문을 작성하는 방법을 연습 할 수 없습니다.
나보다 똑똑한 사람이 나를 보여줄 수 있기를 바란다.
여기 내 코드입니다 :
{% if user.get_profile.subscription_category == '00' %}
$('#id_name_details_prefix_title').addClass('kmw-disabled');
$('#id_name_details_first_name').addClass('kmw-disabled');
$('#id_name_details_middle_name').addClass('kmw-disabled');
$('#id_name_details_last_name').addClass('kmw-disabled');
$('#id_name_details_suffix_title').addClass('kmw-disabled');
{% else %}
{% if user.get_profile.display_virtual_keyboard %}
$('#id_name_details_prefix_title').removeClass('kmw-disabled');
$('#id_name_details_first_name').removeClass('kmw-disabled');
$('#id_name_details_middle_name').removeClass('kmw-disabled');
$('#id_name_details_last_name').removeClass('kmw-disabled');
$('#id_name_details_suffix_title').removeClass('kmw-disabled');
{% else %}
$('#id_name_details_prefix_title').addClass('kmw-disabled');
$('#id_name_details_first_name').addClass('kmw-disabled');
$('#id_name_details_middle_name').addClass('kmw-disabled');
$('#id_name_details_last_name').addClass('kmw-disabled');
$('#id_name_details_suffix_title').addClass('kmw-disabled');
{% endif %}
{% endif %}
if 문 2의 다른 반복되는 경우 1의 내용 - 내가 한 번만 반복 내용을 작성해야 할 것으로 기대하고있다.
자바 스크립트 아니다 :
예를 들어, 다음
category-zero
및virtual-keyboard
사용하는 클래스를 추가합니다. 서버에서 코드를 생성하고 있습니까, 아니면 일종의 템플릿 언어입니까? 어쨌든, 이것은 [codereview.se]에 대해 더 좋은 질문 일 수 있습니다. – JJJ@Juhana Nunjucks 템플릿 일 수 있습니다. –
오, 그래 - 장고 템플릿 언어지만 js, 그러나 마른 원칙은 동일합니다. – user4307426