Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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
Angular 角型';无效[]和#x27;不可分配给类型';FilterExpression[]和#x27;_Angular_Typescript_Rxjs - Fatal编程技术网

Angular 角型';无效[]和#x27;不可分配给类型';FilterExpression[]和#x27;

Angular 角型';无效[]和#x27;不可分配给类型';FilterExpression[]和#x27;,angular,typescript,rxjs,Angular,Typescript,Rxjs,我试图在这个映射中包含这两个语句,一个可以得到我需要的操作符,另一个可以推送值。我很困惑为什么会出现这个特定的错误。它在“this.DataSourceFilters”上出错 类型“void[]”不能分配给类型“FilterExpression[]”。 类型“void”不可分配给类型“FilterExpression”。ts(2322 数据源过滤器:数组; 构造函数(filterDefinitionModel?:filterDefinitionModel){ if(filterDefinitio

我试图在这个映射中包含这两个语句,一个可以得到我需要的操作符,另一个可以推送值。我很困惑为什么会出现这个特定的错误。它在“this.DataSourceFilters”上出错

类型“void[]”不能分配给类型“FilterExpression[]”。
类型“void”不可分配给类型“FilterExpression”。ts(2322
数据源过滤器:数组;
构造函数(filterDefinitionModel?:filterDefinitionModel){
if(filterDefinitionModel.DataSourceFilters){
this.DataSourceFilters=filterDefinitionModel.DataSourceFilters.map(
(过滤器)=>{
const fe=新的FilterExpression(this.logicalOperator);
fe.FilterOptions.push(新的FilterOption(filter.PropertyPath,filter.FilterOperation,filter.Values));
}
//f.PropertyPath,f.FilterOperation,f.Values
);
}

在map中包含的函数末尾,可以添加
返回fe


我经常看到人们对lambda感到困惑,如果你在做
map(filter=>newfiltereexpression(this.logicalOperator))
,此语法将自动返回筛选表达式。由于需要执行额外的步骤,因此需要显式返回某些内容。

传递到
map
的函数不返回任何内容,因此您将得到一个
void
数组。只需返回
此中预期的数据类型。DataSourceFilters
或d不要使用
map
Type 'void[]' is not assignable to type 'FilterExpression[]'.
Type 'void' is not assignable to type 'FilterExpression'.ts(2322



DataSourceFilters: Array<FilterExpression>;
constructor(filterDefinitionModel?: FilterDefinitionModel) {
 if (filterDefinitionModel.DataSourceFilters) {
        this.DataSourceFilters = filterDefinitionModel.DataSourceFilters.map(
           (filter) => {
              const fe = new FilterExpression(this.logicalOperator);
               fe.FilterOptions.push(new FilterOption(filter.PropertyPath, filter.FilterOperation, filter.Values));

           }
           
              // f.PropertyPath, f.FilterOperation, f.Values
        );
     }