admin管理员组

文章数量:1415673

I am trying to push string to typescript array its throwing error `can not push to undefined" , is it correct way or i need to use spread operator ?

api.ts

const api: IConfigName = {name: "getKey"};
const Name = "Web";

api.optionalParam.push(Name);

IConfig.interface.ts

export interface IConfigName {
    name: string;
    optionalParam?: string[];
}

I am trying to push string to typescript array its throwing error `can not push to undefined" , is it correct way or i need to use spread operator ?

api.ts

const api: IConfigName = {name: "getKey"};
const Name = "Web";

api.optionalParam.push(Name);

IConfig.interface.ts

export interface IConfigName {
    name: string;
    optionalParam?: string[];
}
Share Improve this question asked May 1, 2018 at 16:26 hussainhussain 7,14121 gold badges87 silver badges165 bronze badges 1
  • can not push to undefined is not a real error, please post the actual error message. Are you seeing a runtime JavaScript error, or a pile-time TypeScript error? Are you using strictNullChecks? – Aaron Beall Commented May 1, 2018 at 17:25
Add a ment  | 

2 Answers 2

Reset to default 5

You need to initialize optionalParam with empty array as follows,

api.optionalParam = [];
api.optionalParam.push(Name);

You are getting this because there is no "optionaParam" defined in your api object.

your api object currently has only one other, which is "name"

to fix, you can add optionalParam like such:

const api: IConfigName = {name: "getKey", optionalParam:[] };
const Name = "Web";

api.optionalParam.push(Name);

this should work, since api now has an optionalParam key, with a type of array.

本文标签: javascriptHow to push string to typescript arrayStack Overflow