Ionic 3延迟加载最终参考

时间:2018-11-12 23:05:46

标签: ionic-framework ionic3 lazy-loading

我正在开发Ionic应用程序。它基于我去年使用Ionic 2编写的代码。从那以后,我升级了笔记本电脑,并按照通常的过程重新安装了我的所有好东西,包括跃迁到Ionic 3和Cordova的最新版本。我已经破坏了我的应用程序,并在使用$ ionic serve -c和devApp时对其进行了测试。直到我真正为Android构建它,一切似乎都运行良好。事实证明,从延迟加载来看,存在着一系列问题。

基本上,我的起始代码(Ionic 2)有很多:

  import { DeviceviewPage } from '../pages/deviceview/deviceview';


  declarations: [ 
      DeviceviewPage,
     ...


  entryComponents: [
      DeviceviewPage,
在app.module.ts中

type页面声明。但是,我用Ionic自动生成的每个页面都创建了一个pageModule.ts。 page.ts对适合延迟加载。因此,陷入方法论之间,我离开了Google进行延迟加载,以将所有内容转换为该格式。因此,唯一清楚的是大多数贡献者心目中都不知道“离子惰性加载”。在成百上千的论坛问答中,关于它应该如何工作的观点是明确的。

有人坚持认为您应该在app.module.ts中引用您的各个模块。

import { DeviceviewPageModule } from '../pages/deviceview/deviceview.module';

并删除对DeviceviewPage.ts的所有引用。

我做了几页,似乎挂在一起了。但是,当我到达其中包含另一个延迟加载的组件的页面时,轮子掉了下来。当我尝试上述方法时,我得到他以下错误:

    Can't bind to 'data' since it isn't a known property of 'myComponent'.
1. If 'myComponent' is an Angular component and it has 'data' input, then verify that it is part of this module.
2. If 'myComponent' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
3. To allow any property add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. ("

在考虑延迟加载时,似乎比上面指示的需要更多,并且论坛建议完全是错误的。

以下优秀资源:

https://github.com/learn-ionic/ionic3-lazy-loading-example

看起来可能是值得信赖的。但是由于要使我的代码与所使用的方法保持一致会涉及大量的破解工作,因此我认为在我浪费大量时间之前,请调用Stack的功能给予批准是明智的选择(仅发现别人有更好的方法,我应该学习!)

我希望这个问题,而且答案对其他从离子2->离子3过渡的人很有用,尤其是像我这样的人,他们几乎没有编码技能。

0 个答案:

没有答案