{"id":231636,"date":"2023-01-09T12:18:00","date_gmt":"2023-01-09T09:18:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231636"},"modified":"2023-01-14T11:18:34","modified_gmt":"2023-01-14T08:18:34","slug":"avaldage-deno-moodul-kolme-kiire-sammuga","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/avaldage-deno-moodul-kolme-kiire-sammuga\/","title":{"rendered":"Avaldage Deno moodul kolme kiire sammuga"},"content":{"rendered":"\n<p>\u00dcks Deno p\u00f5hifunktsioone on see, et see ei tugine tsentraliseeritud paketiserverile, nagu Node.js tegi npm-iga. Iga\u00fcks saab avaldada mooduli oma serveris ja seda on v\u00e4ga lihtne kasutada t\u00e4nu Deno moodulite URL-ide lahendamisele. Vaatame, kuidas oma esimest Deno moodulit luua, avaldada ja kasutada.<\/p>\n<h2>Mis on Deno moodulid?<\/h2>\n<p>Deno moodulid on osad, mida saate sarnaselt Node.js pakettidele alla laadida ja oma projektis kasutada. Need v\u00f5ivad ulatuda lihtsast funktsioonist millegi keerukani, n\u00e4iteks Oak, Deno http-mooduli vahevararaamistik.<\/p>\n<p>Deno pakub standardmoodulite komplekti, nagu http-moodul, mille vaatab \u00fcle Deno p\u00f5himeeskond. Need t\u00f6\u00f6tavad kindlasti koos konkreetse Deno versiooniga ja asuvad samas <a href=\"https:\/\/github.com\/denoland\/deno\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">denolandi\/deno<\/a> hoidlas, kust v\u00f5ib leida Deno l\u00e4htekoodi.<\/p>\n<p>Standardmooduleid majutatakse aadressil <a href=\"https:\/\/deno.land\/std\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">deno.land\/std<\/a> ja neile p\u00e4\u00e4seb juurde URL-ide kaudu nagu k\u00f5igile teistele Deno-\u00fchilduvatele ES-moodulitele.<\/p>\n<p>Kuid Deno toetab ka kolmanda osapoole mooduleid, nagu Oak, mida saate importida mis tahes kohast veebis, nagu GitHub, isiklik veebiserver v\u00f5i CDN, nagu <a href=\"https:\/\/pika.dev\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pika.dev<\/a> v\u00f5i <a href=\"https:\/\/jspm.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">jspm.io.<\/a><\/p>\n<p>Kolmandate osapoolte moodulite kasutamise h\u00f5lbustamiseks pakub Deno sisseehitatud t\u00f6\u00f6riistu, nagu <code>deno info<\/code>ja <code>deno doc<\/code>. Lisaks pakub Deno veebisait ka veebi kasutajaliidest mooduli dokumentatsiooni vaatamiseks, mis on saadaval aadressil <a href=\"https:\/\/doc.deno.land\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">doc.deno.land<\/a>.<\/p>\n<p>Veebisait pakub ka lihtsat avalikku hostimisteenust Deno-\u00fchilduvate ES-moodulite jaoks, mille leiate aadressilt <a href=\"https:\/\/deno.land\/x\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">deno.land\/x<\/a>.<\/p>\n<h2>Deno mooduli kirjutamine<\/h2>\n<p>Enne avaldamist peame oma mooduli kirjutama. Loome lihtsa \u00fcmberp\u00f6\u00f6ratava s\u00f5nade jada. Kui sisestame &quot;See on l\u00f5bus&quot;, tagastatakse &quot;fun is This&quot;. V\u00e4ga lihtne. Looge uus kaust ja oma mooduli fail selles:<\/p>\n<pre><code>mkdir reverse-words\ncd reverse-words\ntouch mod.ts<\/code><\/pre>\n<p>Redigeerige <code>mod.ts<\/code>oma valitud <a href=\"https:\/\/startfunction.com\/tag\/ide\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">IDE<\/a> -s v\u00f5i koodiredaktoris, ma kasutan <a href=\"https:\/\/startfunction.com\/tag\/vs-code\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">VS-koodi<\/a>. Kleepige see sinna:<\/p>\n<pre><code>const reverseWords = (str: String) =&gt;\n  str.split(\" \").reduce(\n    (revStr: Array, word: String) =&gt; [word, ...revStr],\n    [],\n  ).join(\" \");\nexport default reverseWords;<\/code><\/pre>\n<p>Pange t\u00e4hele, et see on <a href=\"https:\/\/startfunction.com\/tag\/typescript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TypeScripti<\/a> kood. \u00dcks Deno suurep\u00e4raseid omadusi on see, et see toetab TypeScripti algselt. Kuna j\u00e4rgmises etapis avaldame oma Deno mooduli GitHubis, v\u00f5iksite lisada selle kohta lihtsa teabega mooduli <code>README.md<\/code>.<\/p>\n<h2>Avaldage oma Deno moodul<\/h2>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158004-61e6c7eb03544.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158004-61e6c7eb03544.png\" alt=\"Avaldage Deno moodul kolme kiire sammuga\"><\/a><\/p>\n<p>\u00dcks viimane samm enne mooduli avaldamist juhuks, kui olete huvitatud selle saatmisest Deno hoidlasse, on tagada, et see oleks vormindatud vastavalt Deno vormindamisstandardile. Selleks v\u00f5ite k\u00e4skida Denol koodi vormindada, k\u00e4ivitades:<\/p>\n<pre><code>deno fmt mod.ts<\/code><\/pre>\n<p>Avaldame mooduli GitHubis ja laadime selle sealt alla oma Deno projektis. Jookse:<\/p>\n<pre><code>git init\ngit add. git commit -m \"Initial commit\"<\/code><\/pre>\n<p>Looge GitHubis uus hoidla ja j\u00e4tke see t\u00fchjaks. GitHub annab teile sarnased juhised oma repo avaldamiseks<\/p>\n<pre><code>git remote add origin git@github.com:\/.git   \ngit push -u origin master            <\/code><\/pre>\n<p>See avaldab teie mooduli GitHubis. Edu! N\u00fc\u00fcd kasutame seda.<\/p>\n<h2>Kasutage oma Deno moodulit<\/h2>\n<p>Kirjutage uus fail <code>index.ts<\/code>ja lisage see:<\/p>\n<pre><code>import reverseWords from 'https:\/\/raw.githubusercontent.com\/startfunction\/reverse-words\/master\/mod.ts';\n\nconsole.log( reverseWords( 'This is fun') );<\/code><\/pre>\n<p>See laadib eelmises etapis avaldatud mooduli ja kasutab seda stringi \u00fcmberp\u00f6\u00f6ramiseks ja selle tulemuse logimiseks. Saame seda Denoga k\u00e4ivitada:<\/p>\n<pre><code>deno run index.ts<\/code><\/pre>\n<p>see kuvatakse<\/p>\n<pre><code>fun is This<\/code><\/pre>\n<h2>Sinu kord<\/h2>\n<p>Paljude s\u00f5ltuvate moodulitega keeruliste moodulite puhul v\u00f5iksite kasutada Deno komplekteerijat <a href=\"https:\/\/deno.land\/manual\/tools\/bundler\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">,<\/a> mis koondab lihtsamaks avaldamiseks k\u00f5ik \u00fchte moodulisse. Kas olete Deno mooduli avaldanud? Anna meile kommentaarides teada! Ja lugege meie teisi artikleid Deno kohta, n\u00e4iteks <a href=\"https:\/\/wordpress.mediadoma.com\/et\/10-suurepaerast-ressurssi-denoga-oppimiseks-ja-toeoetamiseks\/\" title=\"10 suurep\u00e4rast ressurssi Deno \u00f5ppimiseks ja t\u00f6\u00f6tamiseks\">10 suurep\u00e4rast ressurssi Deno \u00f5ppimiseks ja t\u00f6\u00f6tamiseks<\/a>.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deno ei tugine tsentraliseeritud serverile nagu npm. Iga\u00fcks saab mooduli oma serveris avaldada. \u00d5ppige Deno moodulit looma, avaldama ja kasutama.<\/p>\n","protected":false},"author":1,"featured_media":158005,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[718,749,781,1053,894,842],"tags":[1165],"class_list":["post-231636","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arendaja","category-avatud-laehtekoodiga","category-avatud-laehtekoodiga-tarkvara","category-cms-5","category-kood","category-opetused","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/231636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=231636"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/231636\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/158005"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=231636"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=231636"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=231636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}