如何解决角度-类型'Void []'无法分配给类型'FilterExpression []'
我试图将这两个语句都包含在此映射中,一个可以获取我需要的运算符,另一个可以通过推入值来实现。我很困惑为什么我会收到此特定错误。它在“ this.DataSourceFilters”上出错了
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
);
}
解决方法
在包含在map中的函数的末尾,您可以添加return fe
。
我看到人们经常对lambda感到困惑。如果您正在执行类似map(filter => new FilterExpression(this.logicalOperator))
的操作,则此语法将自动返回过滤器表达式。由于您需要执行额外的步骤,因此需要显式返回一些内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。