如何修改只读值?

我有这个值,我想覆盖它的一个属性。我尝试了以下方法:fetchOptions: Readonly<HttpFetchOptionsWithPath>


((fetchOptions as Writable<HttpFetchOptionsWithPath>).headers as Writable<any>) = {

    'new-value': '123',

    ...(fetchOptions.headers || {}),

  };

但仍然收到错误。TypeError: Cannot assign to read only property 'headers' of object '#<Request>'


执行的 js 代码如下所示:


fetchOptions.headers = __assign({ 'new-value': '123' }, (fetchOptions.headers || {}));


任何想法,我在这里做错了什么?


慕桂英546537
浏览 64回答 2
2回答

有只小跳蛙

您无法修改只读值。您可以做的是将这些对象克隆到新实例中,然后继续使用新实例...Object.assign(newVariable,&nbsp;JSON.parse(JSON.stringify(oldVariable)));

万千封印

使用此语句,您可以复制和覆盖属性var&nbsp;obj={...originalObj,[readOnlyProp:value]}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript