{"id":1270,"date":"2020-02-20T13:35:06","date_gmt":"2020-02-20T13:35:06","guid":{"rendered":"https:\/\/sdf-docs.mansystems.com\/docs\/acr-rules\/performance\/referenceselectoramount\/"},"modified":"2021-09-21T08:33:18","modified_gmt":"2021-09-21T08:33:18","slug":"referenceselectoramount","status":"publish","type":"docs","link":"https:\/\/sdf-docs.clevr.com\/?docs=acr-rules\/performance\/referenceselectoramount","title":{"rendered":"Dropdown reference selectors should be used sparingly"},"content":{"rendered":"\n<p> Released in version 1.6 (03 March 2020) <\/p>\n\n\n\n<p>Each dropdown reference selector on a page will trigger a retrieve list action to load all selectable objects. Therefore having too many widgets on a page can have a big impact on performance. It is recommended to replace dropdown selectors with a page popup. This is especially problematic if a reference selector is used inside a <strong>list <\/strong>or<strong> template grid<\/strong>. When we count the amount of reference selectors we multiply by the number of rows and or columns in a list or template grid.<\/p>\n\n\n\n<p>For more details check the Mendix webinar on app performance  https:\/\/ww2.mendix.com\/expert-webinar-deep-dive-into-xpath.html (min 25).<\/p>\n\n\n\n<p><strong>Non-compliant example:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"304\" src=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2020\/02\/image-16-1024x304.png\" alt=\"\" class=\"wp-image-1272\" srcset=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2020\/02\/image-16-1024x304.png 1024w, https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2020\/02\/image-16-980x291.png 980w, https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2020\/02\/image-16-480x142.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n\n\n\n<p><strong>Compliant example:<\/strong><\/p>\n\n\n\n<p>Convert from select using <em>Dropdown <\/em>to <em>Page<\/em>. Alternatively, remove the reference selector all together.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"featured_media":0,"parent":95,"menu_order":3,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"class_list":["post-1270","docs","type-docs","status-publish","hentry"],"comment_count":0,"_links":{"self":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/1270"}],"collection":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1270"}],"version-history":[{"count":4,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/1270\/revisions"}],"predecessor-version":[{"id":2283,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/1270\/revisions\/2283"}],"up":[{"embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/95"}],"next":[{"title":"Entity should have a maximum of N calculated attributes","link":"https:\/\/sdf-docs.clevr.com\/?docs=acr-rules\/performance\/calculatedattributesamount","href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/231"}],"prev":[{"title":"Commits should take place outside of a loop","link":"https:\/\/sdf-docs.clevr.com\/?docs=acr-rules\/performance\/commitinloop","href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/225"}],"wp:attachment":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1270"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_tag&post=1270"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}