首页 > 解决方案 > 参数 ajax 请求体

问题描述

我希望能够插入或插入 ajax 请求正文的数据部分。假设我有一个这样的 ajax 身体;

"ajax": {
            "url": `/${controllerName}/${actionName}`,
            "type": "POST",
            "data": {example : values},
            "datatype": "json"
        }

我希望能够有条件data地添加或删除这个 ajax 正文的一部分。我尝试过这样的事情;

"ajax": {
            "url": `/${controllerName}/${actionName}`,
            "type": "POST",
            exampleCondition == true ? ("data": {example : values}) : "",
            "datatype": "json"
        }

但这显然不起作用。我想不出如何做到这一点。

提前致谢。

标签: javascript

解决方案


您可以使用扩展语法将对象扩展为它的属性。通过将此语法与三元运算符相结合,您可以以简洁的方式有条件地向对象添加新属性。

例如,有一个错误的条件:

const exampleCondition = false;
const ajax = {
  url: "http://test.com",
  type: "POST",
  datatype: "json",
  ...(exampleCondition ? {data: {example : 'example'}} : {})
};

console.log(ajax);

还有一个具有真实条件的示例:

const exampleCondition = true;
const ajax = {
  url: "http://test.com",
  type: "POST",
  datatype: "json",
  ...(exampleCondition ? {data: {example : 'example'}} : {})
};

console.log(ajax);


推荐阅读