You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NestJS课程@Patch/@Delete请求无法解析URL路径变量${id}问题

问题解决:NestJS中@Patch/@Delete返回模板字符串变量不解析

问题根源

你用双引号包裹了字符串,而ES6模板字符串的变量解析功能只支持用**反引号(``)**包裹字符串。双引号里的${id}会被当作普通文本输出,不会替换成实际的ID值。

修复方案

  1. 把返回语句的双引号替换成反引号:
return `lorem ipsum #${id}`;
  1. 确保控制器方法中正确通过@Param()注入ID参数,完整代码示例:
import { Controller, Patch, Delete, Param } from '@nestjs/common';

@Controller('coffees')
export class CoffeesController {
  @Patch(':id')
  updateCoffee(@Param('id') id: string) {
    return `lorem ipsum #${id}`;
  }

  @Delete(':id')
  removeCoffee(@Param('id') id: string) {
    return `lorem ipsum #${id}`;
  }
}

为什么这样管用?

  • 反引号包裹的是ES6模板字符串,会自动识别并解析${}中的变量,将其替换为对应的值。
  • 双引号/单引号属于普通字符串字面量,只会原样输出其中的内容,不会处理变量替换逻辑。

内容的提问来源于stack exchange,提问作者StillStealSteel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 15:51:53