重构动画服务时出现“ TypeError:无法读取未定义的属性'type'”

时间:2019-07-02 13:49:42

标签: typescript types angular7 angular-animations

我是Angular 7 / TypeScript的新手,并且正在构建一个带有路径转换动画的应用程序。我遵循了Angular的Router Transition Animations准则,但是我试图对其进行重构,因为我有多个由幻灯片动画定义的路径过渡,并且我不想为每个过渡都重写该幻灯片动画。我已经建立了两个文件:一个将服务函数slideTo()声明为方法的幻灯片服务(slide-animations.service.ts),以及一个导出常量slideInAnimation的动画文件(animations.ts),该常量利用了slideTo()服务。

这是animations.ts:

SELECT
    COUNT(CASE WHEN table_schema = ? AND table_name = ? THEN 1 ELSE 0 END) AS cnt
FROM information_schema.tables;

这是slide-animations.service.ts:


import { trigger, transition } from '@angular/animations';
import { SlideAnimationsService } from './slide-animations.service';

export const slideInAnimation =
    trigger('routeAnimations', [
        transition('* => Welcome', SlideAnimationsService["slideTo('left')"]),
        transition('CaseStudy => *', SlideAnimationsService["slideTo('left')"]),
        transition('* <=> *', SlideAnimationsService["slideTo('right')"])
    ]);



这些文件在VScode中编译,但是当我尝试ng serve时,出现以下控制台错误:

AppComponent_Host.ngfactory.js? [sm]:1错误,TypeError:无法读取属性     未定义的“类型”

main.ts:12 TypeError:无法读取未定义的属性'type'

我确定我在这里如何构建这些片段时,我确实缺少一些东西,但是我似乎无法从SO上的任何其他类似问题中找出来。为什么在这里创建一个未定义的类型,我可以探索什么可能的解决方案?

谢谢!

0 个答案:

没有答案