﻿
{"id":7968,"date":"2018-05-13T10:11:44","date_gmt":"2018-05-13T10:11:44","guid":{"rendered":"http:\/\/www.gencayyildiz.com\/blog\/?p=7968"},"modified":"2018-05-13T10:11:44","modified_gmt":"2018-05-13T10:11:44","slug":"angular-4-routingde-parametre-tanimlama-ve-degerini-okuma","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/angular-4-routingde-parametre-tanimlama-ve-degerini-okuma\/","title":{"rendered":"Angular 4 Routing&#8217;de Parametre Tan\u0131mlama ve De\u011ferini Okuma"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Merhaba,<\/p>\n<p>Bir \u00f6nceki <a href=\"http:\/\/www.gencayyildiz.com\/blog\/angular-4-routing-mekanizmasi\/\" rel=\"noopener\" target=\"_blank\">Angular 4 Routing Mekanizmas\u0131<\/a> ba\u015fl\u0131kl\u0131 makalemde Angular&#8217;da Routing mekanizmas\u0131n\u0131 incelemi\u015ftik. Bu i\u00e7eri\u011fimizde ise olu\u015fturdu\u011fumuz route&#8217;larda nas\u0131l parametre tan\u0131mlayaca\u011f\u0131m\u0131z\u0131 ve bu tan\u0131mlad\u0131\u011f\u0131m\u0131z parametreleri nas\u0131l okuyaca\u011f\u0131m\u0131z\u0131 inceleyece\u011fiz.<\/p>\n<p>Angular&#8217;da routes \u015fablonlar\u0131n\u0131 olu\u015ftururken biryandan da istedi\u011finiz route&#8217;a a\u015fa\u011f\u0131daki gibi parametre tan\u0131mlayabilirsiniz.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nexport const AppRoutes: Routes = &#x5B;\r\n    { path: &quot;page\/:content&quot;, component: PageComponent }\r\n];\r\n<\/pre>\n<p>Dikkat ederseniz &#8220;path&#8221; de\u011ferinde beklenen ana adresin yan\u0131na &#8220;\/:&#8221; karakterleri e\u015fli\u011finde parametre tan\u0131mlayabilmekteyiz. Bahsedilen \u015fekilde yukar\u0131da &#8220;content&#8221; isimli bir parametre tan\u0131mlanm\u0131\u015ft\u0131r.<\/p>\n<p>\u015eimdi gelin bu parametreyi kullanal\u0131m;<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n&lt;div class=&quot;row&quot;&gt;\r\n  &lt;div class=&quot;list-group&quot;&gt;\r\n    &lt;a routerLink=&quot;page\/a&quot; &#x5B;routerLinkActiveOptions]=&quot;{exact:true}&quot; routerLinkActive=&quot;active&quot; class=&quot;list-group-item list-group-item-action&quot;&gt;ASayfas\u0131&lt;\/a&gt;\r\n    &lt;a routerLink=&quot;page\/b&quot; &#x5B;routerLinkActiveOptions]=&quot;{exact:true}&quot; routerLinkActive=&quot;active&quot; class=&quot;list-group-item list-group-item-action&quot;&gt;BSayfas\u0131&lt;\/a&gt;\r\n    &lt;a routerLink=&quot;page\/c&quot; &#x5B;routerLinkActiveOptions]=&quot;{exact:true}&quot; routerLinkActive=&quot;active&quot; class=&quot;list-group-item list-group-item-action&quot;&gt;CSayfas\u0131&lt;\/a&gt;\r\n  &lt;\/div&gt;\r\n  &lt;div&gt;\r\n    &lt;router-outlet&gt;&lt;\/router-outlet&gt;\r\n  &lt;\/div&gt;\r\n&lt;\/div&gt;\r\n<\/pre>\n<blockquote><p><em><strong>Dikkat!!!<br \/>\nRouting yap\u0131lanmas\u0131na dair t\u00fcm teferruatlar\u0131n <a href=\"http:\/\/www.gencayyildiz.com\/blog\/angular-4-routing-mekanizmasi\/\" rel=\"noopener\" target=\"_blank\">Angular 4 Routing Mekanizmas\u0131<\/a> isimli makalede oldu\u011fu gibi uyguland\u0131\u011f\u0131n\u0131 varsayarak konumuza devam ediyoruz.<\/strong><\/em>\n<\/p><\/blockquote>\n<p>Yukar\u0131daki kod blo\u011funu incelerseniz e\u011fer &#8220;routerLink&#8221; \u00f6zelli\u011fine tan\u0131mlanan adreslerde &#8220;content&#8221; parametresine verilen de\u011ferler a\u015fikard\u0131r. Bu adreslere t\u0131kland\u0131\u011f\u0131nda;<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/05\/Angular-4-Routing\u2019de-Parametre-Tan\u0131mlama-ve-De\u011ferini-Okuma.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/05\/Angular-4-Routing\u2019de-Parametre-Tan\u0131mlama-ve-De\u011ferini-Okuma.gif\" alt=\"Angular 4 Routing\u2019de Parametre Tan\u0131mlama ve De\u011ferini Okuma\" width=\"368\" height=\"228\" class=\"aligncenter size-full wp-image-7977\" \/><\/a><br \/>\ng\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi linkler tetiklenmektedir. Tetiklenme sonucunda uygulama parametre olarak hangi de\u011ferin verildi\u011fini do\u011fal olarak bilemeyecek, bilsede(<span style=\"font-size:10px;\">ki \u015fu durumda m\u00fcmk\u00fcn de\u011fil<\/span>) bu parametrelere kar\u015f\u0131l\u0131k ne t\u00fcr bir i\u015flem uygulayaca\u011f\u0131n\u0131 bilemeyecektir.<\/p>\n<p>O halde bizim ilk olarak &#8220;PageComponent&#8221; isimli component \u00fczerinde parametreye verilen de\u011ferleri elde etmemiz gerekmektedir. Bu i\u015flemide &#8220;@angular\/router&#8221; dizininde bulunan &#8220;ActivatedRoute&#8221; isimli servis sayesinde ger\u00e7ekle\u015ftirmekteyiz. <\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nimport { Component, OnInit } from '@angular\/core';\r\nimport { ActivatedRoute } from &quot;@angular\/router&quot;;\r\n@Component({\r\n  selector: 'app-page',\r\n  templateUrl: '.\/page.component.html',\r\n  styleUrls: &#x5B;'.\/page.component.css']\r\n})\r\nexport class PageComponent implements OnInit {\r\n  contentParam: string;\r\n  constructor(private activatedRoute: ActivatedRoute) { }\r\n  ngOnInit() {\r\n    this.activatedRoute.params.subscribe(p =&gt; {\r\n      this.contentParam = p&#x5B;&quot;content&quot;];\r\n    });\r\n  }\r\n}\r\n<\/pre>\n<p>Yukar\u0131daki kod blo\u011funu incelerseniz e\u011fer; route parametreleri &#8220;ActivatedRoute&#8221; servisi sayesinde okunabilmektedir. Tabi burada dikkat ederseniz e\u011fer &#8220;ActivatedRoute&#8221; asenkron bir \u015fekilde \u00e7al\u0131\u015fmaktad\u0131r ve bizim route parametrelerini okuyabilmemiz i\u00e7in mutlaka subscribe(abone) olmam\u0131z gerekmektedir. Ancak bu \u015fekilde bir parametreye de\u011fer verildi\u011finde yakalayabilmekteyiz.<\/p>\n<p>Son olarak &#8220;page.component.html&#8221; sayfas\u0131n\u0131 a\u015fa\u011f\u0131daki gibi d\u00fczenleyelim;<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n&lt;p&gt;\r\n  {{contentParam}}\r\n&lt;\/p&gt;\r\n<\/pre>\n<p>ve bu i\u015flemden sonra \u00e7al\u0131\u015fmam\u0131z\u0131 kaydedip, yay\u0131nlad\u0131\u011f\u0131m\u0131zda a\u015fa\u011f\u0131daki gibi route&#8217;a verilen parametreye ula\u015f\u0131l\u0131p, ekrana yazd\u0131r\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6rebiliriz.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/05\/Angular-4-Routing\u2019de-Parametre-Tan\u0131mlama-ve-De\u011ferini-Okuma-1.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/05\/Angular-4-Routing\u2019de-Parametre-Tan\u0131mlama-ve-De\u011ferini-Okuma-1.gif\" alt=\"Angular 4 Routing\u2019de Parametre Tan\u0131mlama ve De\u011ferini Okuma\" width=\"368\" height=\"228\" class=\"aligncenter size-full wp-image-7986\" \/><\/a><\/p>\n<p>Sonraki yaz\u0131lar\u0131mda g\u00f6r\u00fc\u015fmek \u00fczere&#8230;<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar&#8230;<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Merhaba, Bir \u00f6nceki Angular 4 Routing Mekanizmas\u0131 ba\u015fl\u0131kl\u0131 makalemde Angular&#8217;da Routing mekanizmas\u0131n\u0131 incelemi\u015ftik. Bu i\u00e7eri\u011fimizde ise olu\u015fturdu\u011fumuz route&#8217;larda nas\u0131l parametre tan\u0131mlayaca\u011f\u0131m\u0131z\u0131 ve bu tan\u0131mlad\u0131\u011f\u0131m\u0131z parametreleri nas\u0131l okuyaca\u011f\u0131m\u0131z\u0131 inceleyece\u011fiz. Angular&#8217;da routes \u015fablonlar\u0131n\u0131 olu\u015ftururken biryandan da&#46;&#46;&#46;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":7986,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[2347,2348,2339,2350,2349],"class_list":["post-7968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-genel","tag-activatedroute","tag-angular-4-routing","tag-angular-routing","tag-angular-routing-parameters","tag-angular-routing-parametre"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/7968","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=7968"}],"version-history":[{"count":15,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/7968\/revisions"}],"predecessor-version":[{"id":7987,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/7968\/revisions\/7987"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media\/7986"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=7968"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=7968"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=7968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}