AngularJS - الطريق - كيفية مطابقة النجمة (*) كمسار
-
12-12-2019 - |
سؤال
أنا أقوم بإنشاء تطبيق لعارض الموارد، ولكن المشكلة هي أنني حاولت المطابقة when("/!/:resourceUrl")
.
إنه يعمل بشكل جيد إذا كان عنوان URL للمورد يشبه /path
, ، ولكن كيف يمكنني صنع شيء مثل /path/to/the/resource
.
لا أعرف كم من المسارات سوف يستغرق، لذلك لا أستطيع أن أفعل ذلك .when("/!/:path1/:path2/:path3")
.
أيه أفكار؟
المحلول
اعتبارًا من angular-1.2 يمكنك القيام بذلك:
when("/!/:resourceUrl*")
http://code.angularjs.org/1.2.0/docs/api/ngRoute.$routeProvider
على وجه الخصوص، تعطي الوثائق المثال التالي:
على سبيل المثال، طرق مثل /color/:color/largecode/:largecode*\/edit
سيطابق /color/brown/largecode
/code/with/slashs/edit
واستخرج:
color: brown
largecode: code/with/slashs
نصائح أخرى
اعتبارًا من الآن، لا يدعم AngularJS التعبيرات العادية في المسارات.
تحقق من هذه الروابط: https://github.com/angular/angular.js/issues/918, https://github.com/angular/angular.js/pull/972