title: ExpressJS doesn't fires next routes in app.use
body: <p>I have a problem that ExpressJS fires wrong routes while using app.use
  This is the code from index.js file, where i combine all routes:</p>
  
  <pre><code>const app = express(),
    Router = express.Router();
  
  app.use("/api/vehicle", vehiclesRoutes(Router));
  app.use("/api/static-costs", staticCostsRoutes(Router));
  app.use("/api/company", companiesRoutes(Router));
  app.use("/api/worker", workersRoutes(Router));
  </code></pre>
  
  <p>Each of this functions (vehiclesRoutes, staticCostsRoutes etc.) are constructed the same.</p>
  
  <p>For example vehicleRoutes:</p>
  
  <pre><code>export default (router) =&gt; {
    router.get("/:company_id", getVehiclesByCompany);
    router.post("/:company_id", postVehicle);
    router.put("/:company_id/:id", putVehicle);
    router.delete("/:company_id/:id", deleteVehicle);
    return router;
  };
  </code></pre>
  
  <p>For example staticCostsRoutes:</p>
  
  <pre><code>export default router =&gt; {
    router.get("/:company_id", getStaticCostsByCompany);
    router.post("/:company_id", postStaticCost);
    router.put("/:company_id/:id", putStaticCost);
    router.delete("/:company_id/:id", deleteStaticCost);
    return router;
  };
  </code></pre>
  
  <p>I am passing Express Router, pinning routes and return Router.</p>
  
  <p>When i am trying to call <strong>PUT /api/static-cost/:company_id/:id</strong>,
  it fires <strong>PUT /api/vehicles/:company_id/:id</strong>.</p>
  
  <p>I mentioned something interesting, when i exchange these two things:</p>
  
  <pre><code>app.use("/api/static-costs", staticCostsRoutes(Router));
  app.use("/api/vehicle", vehiclesRoutes(Router));
  </code></pre>
  
  <p>The situation is reverse, when i am trying to call <strong>PUT /api/vehicle/:company_id/:id</strong>,it fires <strong>PUT /api/static-costs/:company_id/:id</strong>.</p>