类型 Observable<Customer | undefined> 不可分配给类型 Observable<Customer>



在最新的Angular 12上,我收到错误:

类型Observable<客户|未定义>不可分配给类型Observable

除了使用Observable,还有什么新的typescript方法来处理这个问题?倾向于避免使用"任何">

在我的ngOnInit((内部{const customer=Observable=this.store.select(myCustomerReducer.getCurrentCustomer(}

我尝试了const-customer=Observable=this.store.select(myCustomerReducer.getCurrentCustomer(??new Observable((;

但这并没有奏效。

在myCustomerReducer代码中

const getCustomerFeatureState = createFeatureSelector<CustomerState>(
"customers"
)
export const getCurrentCustomerId = createSelector(
getCustomerFeatureState,
(state: CustomerState) => state.selectedCustomerId
);
export const getCurrentCustomer = createSelector(
getCustomerFeatureState,
getCurrentCustomerId,
state => state.entities[state.selectedCustomerId ?? 0]
);

我不得不补充一下??0以删除state.selectedCustomerId作为索引类型不能为null的错误

在Angular 11中,这是构建的,但仍停留在如何解决这个问题上。

我还试着移动

const customer = Observable<Customer> = new Observable<Customer>();

作为一个类,但当我给它分配以下内容时,同样的错误再次出现。

this.customer = this.store.select(myCustomerReducer.getCurrentCustomer) ?? new Observable<Customer>();

任何帮助都将不胜感激。谢谢

我认为您的意思是使用":"而不是"="设置类型?

const customer: Observable<Customer> = new Observable<Customer>();

相关内容

最新更新