31 lines
1.8 KiB
Markdown
31 lines
1.8 KiB
Markdown
|
---
|
|||
|
title: Dynamic Urls Using Routeparams in Angular
|
|||
|
localeTitle: ديناميات ديناميكية باستخدام Routeparams في Angular
|
|||
|
---
|
|||
|
ماذا لو كان لديك الكثير من المستخدمين الذين ينشرون _أشياء_ لموقعك على الويب؟ ربما يريد المستخدمون لديك ملفًا شخصيًا أو جدارًا _للأشياء_ التي نشروها ، ويريدون أن يتمكنوا من مشاركتها مع أصدقائهم باستخدام عنوان url؟ يمكنك القيام بذلك ، لا biggie!
|
|||
|
|
|||
|
لنفترض أنك استخدمت
|
|||
|
|
|||
|
`>> yo angular-fullstack:route wall
|
|||
|
`
|
|||
|
|
|||
|
لإنشاء مسار http://myapp.wherever.com/wall/ لمستخدميك. أنت تريد رابطًا إلى http://myapp.wherever.com/wall/someUsername لعرض _أشياء_ خاصة بمستخدم معين.
|
|||
|
استعرض إلى **/client/app/wall/wall.js ولاحظ** أنه يكتشف عنوان URL الذي يطلبه المستخدم قبل التصرف عليه:
|
|||
|
|
|||
|
`$routeProvider.when('/wall', …
|
|||
|
`
|
|||
|
|
|||
|
يمكنك تخصيص هذا المسار للاحتفاظ به عندما يحاول المستخدم مشاهدة ملف شخصي مرتبط باسم مستخدم معين مثل:
|
|||
|
|
|||
|
`$routeProvider.when('/wall/:username', …
|
|||
|
`
|
|||
|
|
|||
|
يشير النقطتين قبل "username" إلى أن هذا متغير ، ثم يتم تمريره إلى الوحدة _$ routeParams_ . في **wall.controller.js** ، _أدخل $ routeParams_ :
|
|||
|
|
|||
|
`.controller('WallCtrl', function ($scope, $routeParams) { …
|
|||
|
`
|
|||
|
|
|||
|
ثم لاحقًا في **wall.controller.js** ، يمكنك معرفة اسم المستخدم المطلوب في عنوان URL بالرجوع إلى المتغير الذي تم إنشاؤه بواسطة _$ routeProvider_ باستخدام شيء ما مثل
|
|||
|
|
|||
|
`var wallOwner = $routeParams.username;
|
|||
|
`
|