Просмотр исходного кода

refactor: updates default route path

e22m4u 3 недель назад
Родитель
Сommit
34027e84e7
4 измененных файлов с 20 добавлено и 4 удалено
  1. 16 0
      README.md
  2. 1 1
      dist/cjs/index.cjs
  3. 1 1
      src/route/route.js
  4. 2 2
      src/route/route.spec.js

+ 16 - 0
README.md

@@ -79,6 +79,22 @@ server.listen(3000, 'localhost');             // прослушивание за
 *i. Для указания метода запроса рекомендуется использовать
 константу `HttpMethod`, чтобы избежать опечаток.*
 
+#### path
+
+Параметр `path` является необязательным. Если он опущен, маршрут регистрируется
+в корне текущего контекста. Для основного экземпляра роутера это эквивалентно
+указанию пути `/` (главная страницы).
+
+```js
+// добавит маршрут GET "/"
+router.defineRoute({
+  method: HttpMethod.GET,
+  handler(ctx) {
+    return 'Hello world!';
+  },
+});
+```
+
 ### Контекст запроса
 
 Первый параметр обработчика маршрута принимает экземпляр класса

+ 1 - 1
dist/cjs/index.cjs

@@ -1081,7 +1081,7 @@ var _Route = class _Route extends import_js_debug.Debuggable {
     });
     validateRouteDefinition(routeDef);
     this._method = routeDef.method.toUpperCase();
-    this._path = routeDef.path || "";
+    this._path = routeDef.path || "/";
     if (routeDef.meta !== void 0) {
       this._meta = cloneDeep(routeDef.meta);
     }

+ 1 - 1
src/route/route.js

@@ -139,7 +139,7 @@ export class Route extends Debuggable {
     });
     validateRouteDefinition(routeDef);
     this._method = routeDef.method.toUpperCase();
-    this._path = routeDef.path || '';
+    this._path = routeDef.path || '/';
     if (routeDef.meta !== undefined) {
       this._meta = cloneDeep(routeDef.meta);
     }

+ 2 - 2
src/route/route.spec.js

@@ -95,12 +95,12 @@ describe('Route', function () {
         expect(route.path).to.be.eq(value);
       });
 
-      it('should set an empty string to the "path" property when the "path" option is not provided', function () {
+      it('should set the "path" property to "/" when the "path" option is not provided', function () {
         const route = new Route({
           method: HttpMethod.GET,
           handler: () => undefined,
         });
-        expect(route.path).to.be.eq('');
+        expect(route.path).to.be.eq('/');
       });
     });