2

我正在开发一个应用程序,其中 API CRUD 函数的 URL/路径定义如下:

var newApiAddresses = {
        itemsGet: "<?php echo $view['router']->url('itembook_test_api_v1_apiitems_getitems'); ?>",
        itemAdd: "<?php echo $view['router']->url('itembook_test_api_v1_apiitems_itemadd'); ?>",
        itemEdit: "<?php echo $view['router']->path('itembook_test_api_v1_apiitems_itemedit', array('id' => null)); ?>",
        itemDelete: "<?php echo $view['router']->path('itembook_test_api_v1_apiitems_itemdelete', array('id' => null)); ?>"
    }

正如预期的那样,编辑和删除的路径会收到一个 id。现在在我的应用程序中,我可以创建一个帖子并使用以这种方式定义的 url 获取请求,如下所示:

  handlePostItemToApi () {
    axios.post(newApiAddresses.itemAdd, {
      "itemId": 1,
      "date": this.changeDateFormat(),
      ...

以上发送 POST 请求没有问题。但是当我需要编辑一个项目时,我需要以某种方式将 itemid 包含到这个 url 中。我试过这样做,但没有奏效

  handleEditItemToApi () {
    axios.put(newApiAddresses.itemEdit/{$id}, {
      "itemId": 1,
      "date": this.changeDateFormat(),
      ...

在上述 url 中包含 id 的正确方法是什么?我不能像axios 文档中所示的那样对 url 进行硬编码,例如“ http://localhost/app_dev.php/api/v1/items/ {$id}”

4

1 回答 1

1

您可以通过以下方式使用反引号(不是通常的单引号)来执行此操作,

 axios.put(`newApiAddresses.itemEdit/{$id}`, {

或使用单引号作为,

axios.put('newApiAddresses.itemEdit/'+id, {
于 2018-05-27T07:10:36.697 回答