1
急いでAngular 2/Reduxプロジェクトを引き継ぎました。私は残念なことに、角度2をとてもよく知らない。私はnpm start
でプロジェクトをブートストラップしようとしているが、このエラーを取得しています:Redux-Thunkでエラーが発生するTypescript
app/_dashboard.store.ts(54,37): error TS2345: Argument of type '(dispatch: any) => void' is not assignable to parameter of type 'Action'.
Property 'type' is missing in type '(dispatch: any) => void'.
これは、エラーを引き起こしているコードです:
export const getNotificationAlerts: Function =() => {
let url = '/myaccount/GetUserProfileAlertSettings';
post(url, {}, true)
.then(function (response) {
DashboardStore.dispatch((dispatch) => {
if (response.data) {
let notifications = response.data;
delete notifications.ResultCode;
dispatch({
type: 'STORE_NOTIFICATIONS',
notifications: notifications
});
}
});
})
.catch(function (error) {
DashboardStore.dispatch((dispatch) => {
dispatch({
type: 'ERROR_STORE_NOTIFICATIONS',
error: error
});
});
});
}
コンポーネント:
@Component({
moduleId: module.id,
selector: 'dashboard-notifications',
templateUrl: '../Templates/dashboard/notifications.html',
animations: [
trigger('notificationVisibility', [
state('true', style({ opacity: 1, display: 'block' })),
state('false', style({ opacity: 0, display: 'none', height: '0px' })),
transition('*=>*', animate('0.15s'))
])
]
})
export class DashboardNotificationsComponent {
// Initialize variables
@Input() data: any;
//showNotifications = 'true';
notificationActionSelected = false;
constructor() { }
processDetailsApproval: Function = (val, sender) => {
let thisComponet = this;
// Set disappear flag for class
this.notificationActionSelected = true;
if (typeof val !== 'undefined') {
processSenderApproval({
'Status': val,
'RecipientId': sender.RecipientId,
'BusinessId': sender.BusinessId
});
}
setTimeout(function() {
thisComponet.notificationActionSelected = false;
}, 500);
}
}
ポスト機能
export const post = (url: string, data: Object, includeToken) => {
let params: Object = {};
if (includeToken) {
params = addToken({});
}
if (data) {
params = Object.assign({}, params, data);
}
params = qs.stringify(params);
return axios.post(url, params);
}
私は一日中解決策を見てきましたが、多くのトレーニングをしなくてもこのプロジェクトを引き継いで以来、私は検索する必要があるかどうかは確信していますし、回答もわかりません。どんなリードも感謝します。
あなたはアクションとコンポーネントを付けましたか?完全なコンポーネントコードとその書き出し方法を投稿する –
@PriyeshKumarはコンポーネントコードを追加しました。それが役に立てば幸い! –