Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Typescript中使setter成为可选的?_Typescript_Typescript2.0 - Fatal编程技术网

如何在Typescript中使setter成为可选的?

如何在Typescript中使setter成为可选的?,typescript,typescript2.0,Typescript,Typescript2.0,我拥有的是一个用于在屏幕中表示值的类: 导出类类别(){ 构造函数(){} 私有_name?:字符串; private _viewValue?:字符串; 获取名称(){ 返回此。\u名称; } 集合名称(值:字符串){ 这个._name=value; 这是._viewValue=getViewValue(名称); } 获取视图值(){ 返回此值。\u viewValue; } 设置视图值(值:字符串){ 这是。_viewValue=value; } } 函数getViewValue(值:stri

我拥有的是一个用于在屏幕中表示值的类:

导出类类别(){
构造函数(){}
私有_name?:字符串;
private _viewValue?:字符串;
获取名称(){
返回此。\u名称;
}
集合名称(值:字符串){
这个._name=value;
这是._viewValue=getViewValue(名称);
}
获取视图值(){
返回此值。\u viewValue;
}
设置视图值(值:字符串){
这是。_viewValue=value;
}
}
函数getViewValue(值:string):string{
开关(值){
案例“a1”:{
返回'A1';
}
案例“a1”:{
返回'A2';
}
}
}
但是,当我尝试设置此值时,需要为viewValue属性设置一个值。我想做的是使
设置视图值(值)
成为可选的,就像我能够使用
\u name
\u value
一样

我已经试过做
set了?视图值(值)
设置视图值?(值)
设置视图值(值)
但这些都不起作用


当然,我可以让viewValue设置器什么都不做,但真的不可能让设置成为可选的吗?

只是不要编写设置器。但是
category.viewValue=''
将抛出错误。您可以在不使用getter/setter的情况下使用公共属性
viewValue

有不同种类的属性描述符()。不能混合使用数据描述符和访问器描述符

导出类类别(){
构造函数(){}
私有_name?:字符串;
viewValue?:字符串;
获取名称(){
返回此。\u名称;
}
集合名称(值:字符串){
这个._name=value;
this.viewValue=getViewValue(名称);
}
}