{"title":"Cód JavaScript","version":"6.0","locale":"ga","docname":"internals/contributing/writing-code/javascript","url":"/ga/6.0/internals/contributing/writing-code/javascript/","canonical":"https://djangodocs.dev/ga/6.0/internals/contributing/writing-code/javascript/","summary":"Cé gur Python an chuid is mó de chroí Django, tá cód JavaScript sna feidhmchláir contrib admin agus gis`. Lean na caighdeáin chódú seo le do thoil agus cód…","html":"<h1>Cód JavaScript<a class=\"heading-anchor\" href=\"#javascript-code\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Cé gur Python an chuid is mó de chroí Django, tá cód JavaScript sna feidhmchláir contrib <code class=\"docutils literal notranslate\"><span class=\"pre\">admin</span></code> agus gis`.</p>\n<p>Lean na caighdeáin chódú seo le do thoil agus cód JavaScript á scríobh le haghaidh áireamh i Django.</p>\n<section id=\"code-style\">\n<h2>Stíl an chód<a class=\"heading-anchor\" href=\"#code-style\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<ul class=\"simple\">\n<li><p>Comhlíonadh leis an stíl ionghabhála a ordaítear sa chomhad <code class=\"docutils literal notranslate\"><span class=\"pre\">.editorconfig</span></code>. Molaimid eagarthóir téacs a úsáid le tacaíocht <a class=\"reference external\" href=\"https://editorconfig.org/\">EditorConfig</a> chun saincheisteanna insint agus spás bán a sheachaint. Úsáideann an chuid is mó de na comhaid JavaScript 4 spás le haghaidh ionbhrú, ach tá roinnt eisceachtaí ann.</p></li>\n<li><p>Agus athróga á ainmniú agat, bain úsáid as <code class=\"docutils literal notranslate\"><span class=\"pre\">camelcase</span></code> in ionad <code class=\"docutils literal notranslate\"><span class=\"pre\">underscore_case</span></code>. Uaireanta úsáideann comhaid éagsúla JavaScript stíl chód difriúil. Déan iarracht cloí le stíl chód gach comhad le do thoil.</p></li>\n<li><p>Úsáid an linter cód <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>eSlint <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">`</span></a>_ chun do chód a sheiceáil le haghaidh fabhtanna agus earráidí stíl. Reáchtálfar eSlint nuair a reáchtáil tú na tástálacha JavaScript. Molamar freisin breiseán eSlint a shuiteáil i d'eagarthóir téacs.</p></li>\n<li><p>Nuair is féidir, scríobh cód a oibreoidh fiú má athraítear struchtúr an leathanaigh níos déanaí le JavaScript. Mar shampla, nuair a bhíonn láimhseálaí cliceála á cheangal agat, bain úsáid as <code class=\"docutils literal notranslate\"><span class=\"pre\">$</span> <span class=\"pre\">('body')</span> <span class=\"pre\">.on</span> <span class=\"pre\">('click',</span> <span class=\"pre\">roghnóir,</span> <span class=\"pre\">func)</span> <span class=\"pre\">``in</span> <span class=\"pre\">ionad</span> <span class=\"pre\">``$</span> <span class=\"pre\">(roghnóir)</span> <span class=\"pre\">.click</span> <span class=\"pre\">(func)</span></code>. Fágann sé seo go bhfuil sé níos éasca do thionscadail iompar réamhshocraithe Django a leathnú le JavaScript.</p></li>\n</ul>\n</section>\n<section id=\"javascript-patches\">\n<span id=\"id1\"></span><h2>Paistí JavaScript<a class=\"heading-anchor\" href=\"#javascript-patches\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Giarálann córas riaracháin Django creat jQuery chun cumais an chomhéadain riaracháin a mhéadú. I gcomhar, tá béim ar fheidhmíocht riaracháin JavaScript agus méid foriomlán comhad meán riaracháin a íoslaghdú.</p>\n</section>\n<section id=\"javascript-tests\">\n<span id=\"id2\"></span><h2>Tástálacha JavaScript<a class=\"heading-anchor\" href=\"#javascript-tests\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Is féidir tástálacha JavaScript Django a reáchtáil i mbrabhsálaí nó ón líne ordaithe. Tá na tástálacha suite in eolaire barrleibhéil: source: js_tests.</p>\n<section id=\"writing-tests\">\n<h3>Tástála scríbhneo<a class=\"heading-anchor\" href=\"#writing-tests\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Úsáideann tástálacha JavaScript Django <a class=\"reference external\" href=\"https://qunitjs.com/\">Qunit</a>. Seo sampla modúl tástála:</p>\n<div class=\"code-block\" data-language=\"javascript\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">JavaScript</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"JavaScript code\"><code><span class=\"nx\">QUnit</span><span class=\"p\">.</span><span class=\"nx\">module</span><span class=\"p\">(</span><span class=\"s1\">&#39;magicTricks&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"nx\">beforeEach</span><span class=\"o\">:</span><span class=\"w\"> </span><span class=\"kd\">function</span><span class=\"p\">()</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">        </span><span class=\"kd\">const</span><span class=\"w\"> </span><span class=\"nx\">$</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"nx\">django</span><span class=\"p\">.</span><span class=\"nx\">jQuery</span><span class=\"p\">;</span>\n<span class=\"w\">        </span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;#qunit-fixture&#39;</span><span class=\"p\">).</span><span class=\"nx\">append</span><span class=\"p\">(</span><span class=\"s1\">&#39;&lt;button class=&quot;button&quot;&gt;&lt;/button&gt;&#39;</span><span class=\"p\">);</span>\n<span class=\"w\">    </span><span class=\"p\">}</span>\n<span class=\"p\">});</span>\n\n<span class=\"nx\">QUnit</span><span class=\"p\">.</span><span class=\"nx\">test</span><span class=\"p\">(</span><span class=\"s1\">&#39;removeOnClick removes button on click&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kd\">function</span><span class=\"p\">(</span><span class=\"nx\">assert</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"kd\">const</span><span class=\"w\"> </span><span class=\"nx\">$</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"nx\">django</span><span class=\"p\">.</span><span class=\"nx\">jQuery</span><span class=\"p\">;</span>\n<span class=\"w\">    </span><span class=\"nx\">removeOnClick</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">);</span>\n<span class=\"w\">    </span><span class=\"nx\">assert</span><span class=\"p\">.</span><span class=\"nx\">equal</span><span class=\"p\">(</span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">length</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mf\">1</span><span class=\"p\">);</span>\n<span class=\"w\">    </span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">click</span><span class=\"p\">();</span>\n<span class=\"w\">    </span><span class=\"nx\">assert</span><span class=\"p\">.</span><span class=\"nx\">equal</span><span class=\"p\">(</span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">length</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mf\">0</span><span class=\"p\">);</span>\n<span class=\"p\">});</span>\n\n<span class=\"nx\">QUnit</span><span class=\"p\">.</span><span class=\"nx\">test</span><span class=\"p\">(</span><span class=\"s1\">&#39;copyOnClick adds button on click&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kd\">function</span><span class=\"p\">(</span><span class=\"nx\">assert</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"kd\">const</span><span class=\"w\"> </span><span class=\"nx\">$</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"nx\">django</span><span class=\"p\">.</span><span class=\"nx\">jQuery</span><span class=\"p\">;</span>\n<span class=\"w\">    </span><span class=\"nx\">copyOnClick</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">);</span>\n<span class=\"w\">    </span><span class=\"nx\">assert</span><span class=\"p\">.</span><span class=\"nx\">equal</span><span class=\"p\">(</span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">length</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mf\">1</span><span class=\"p\">);</span>\n<span class=\"w\">    </span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">click</span><span class=\"p\">();</span>\n<span class=\"w\">    </span><span class=\"nx\">assert</span><span class=\"p\">.</span><span class=\"nx\">equal</span><span class=\"p\">(</span><span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"s1\">&#39;.button&#39;</span><span class=\"p\">).</span><span class=\"nx\">length</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mf\">2</span><span class=\"p\">);</span>\n<span class=\"p\">});</span>\n</code></pre></div>\n<p>Féach le do thoil ar an gcáipéisíocht <code class=\"docutils literal notranslate\"><span class=\"pre\">QUnit</span></code> chun faisnéis a fháil faoi na cineálacha <a class=\"reference external\" href=\"https://api.qunitjs.com/assert/\">dearbhuithe a fhaigheann tacaíocht ó QUnit</a>.</p>\n</section>\n<section id=\"running-tests\">\n<h3>Rith tástálacha<a class=\"heading-anchor\" href=\"#running-tests\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Is féidir na tástálacha JavaScript a reáchtáil ó bhrabhsálaí gréasáin nó ón líne ordaithe.</p>\n<section id=\"testing-from-a-web-browser\">\n<h4>Tástáil ó bhrabhsálaí gréasáin<a class=\"heading-anchor\" href=\"#testing-from-a-web-browser\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>Chun na tástálacha a reáchtáil ó bhrabhsálaí gréasáin, oscail:source: js_tests/tests.html i do bhrabhsálaí.</p>\n<p>Chun clúdach cód a thomhas agus na tástálacha á reáchtáil agat, ní mór duit an comhad sin a fheiceáil thar HTTP. Chun clúdach cód a fheiceáil:</p>\n<ul class=\"simple\">\n<li><p>Feidhmigh <code class=\"docutils literal notranslate\"><span class=\"pre\">python</span> <span class=\"pre\">-m</span> <span class=\"pre\">http.server</span></code> ón eolaire fréimhe (ní ón taobh istigh <code class=\"docutils literal notranslate\"><span class=\"pre\">js_tests</span></code>).</p></li>\n<li><p>Oscail <a class=\"reference external\" href=\"http://localhost:8000/js_tests/tests.html\">http://localhost:8000/js_tests/tests.html</a> i do bhrabhsálaí gréasáin.</p></li>\n</ul>\n</section>\n<section id=\"testing-from-the-command-line\">\n<h4>Tástáil ón líne ordaithe<a class=\"heading-anchor\" href=\"#testing-from-the-command-line\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>Chun na tástálacha a reáchtáil ón líne ordaithe, ní mór duit <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>Node.js <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">`</span></a>_ a bheith suiteáilte.</p>\n<p>Tar éis duit <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>Node.js <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">``</span></a>a shuiteáil, suiteáil na spleáchais tástála JavaScript tríd an méid seo a leanas a reáchtáil ó fhréamh do sheiceáil Django:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-0-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\">$ </span>npm<span class=\"w\"> </span>install\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-0-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> npm install\n</code></pre></div></div></div>\n<p>Ansin reáchtáil na tástálacha le:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-1-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\">$ </span>npm<span class=\"w\"> </span><span class=\"nb\">test</span>\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-1-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> npm test\n</code></pre></div></div></div>\n</section>\n</section>\n</section>","rootId":"javascript-code","toc":[{"title":"Stíl an chód","anchor":"code-style","children":[]},{"title":"Paistí JavaScript","anchor":"javascript-patches","children":[]},{"title":"Tástálacha JavaScript","anchor":"javascript-tests","children":[{"title":"Tástála scríbhneo","anchor":"writing-tests","children":[]},{"title":"Rith tástálacha","anchor":"running-tests","children":[{"title":"Tástáil ó bhrabhsálaí gréasáin","anchor":"testing-from-a-web-browser","children":[]},{"title":"Tástáil ón líne ordaithe","anchor":"testing-from-the-command-line","children":[]}]}]}],"breadcrumbs":[{"docname":"internals/index","title":"Inmheánacha Django","url":"/ga/6.0/internals/"},{"docname":"internals/contributing/index","title":"Ag cur le Django","url":"/ga/6.0/internals/contributing/"},{"docname":"internals/contributing/writing-code/index","title":"Cód rannpháirteach","url":"/ga/6.0/internals/contributing/writing-code/"}],"prev":{"docname":"internals/contributing/writing-code/coding-style","title":"Stíl chódú","url":"/ga/6.0/internals/contributing/writing-code/coding-style/"},"next":{"docname":"internals/contributing/accessibility","title":"Accessibility","url":"/ga/6.0/internals/contributing/accessibility/"},"formats":{"html":"/ga/6.0/internals/contributing/writing-code/javascript/","markdown":"/ga/6.0/internals/contributing/writing-code/javascript.md","json":"/ga/6.0/internals/contributing/writing-code/javascript.json"},"source":"https://github.com/django/django/blob/stable/6.0.x/docs/internals/contributing/writing-code/javascript.txt","official":"https://docs.djangoproject.com/ga/6.0/internals/contributing/writing-code/javascript/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}