按需加载捆绑包""在aurelia(使用aurelia-cli)

时间:2017-04-06 08:26:31

标签: bundle aurelia aurelia-cli

我们正在将aurelia-cli用于单页应用程序。它具有多个用户模块的概念(基本上具有视图和视图模型的简单文件夹)。现在随着应用程序的增长,我们想要一种不预先加载所有模块的方法。例如,一个用户可能只能访问20个模块中的3个。

现在的问题是,我们如何定义模块包并仅根据运行时的条件按需加载这些模块?

我们设法通过编辑aurelia.json文件来创建包。我们的文件如下所示

"bundles": [
{
    "name": "my-module-bundle.js",
    "source": [
      "[**/my-module/*.js]",
      "**/my-module/*.{css,html}"
    ]
  },
  {
    "name": "app-bundle.js",
    "source": [
      "[**/*.js]",
      "**/*.{css,html}"
    ]
  }, 
...

这会导致" my-module"的所有代码最终成为自己的捆绑。 这也适用于如果没有代码引用" my-module"捆绑包不会被下载和执行。

但是......如果我们想根据某种情况动态加载这个模块,我们就不幸了,因为我们需要引用该模块,从而导致它下载。

有没有解决这个问题的方法?我们可以使用代码按需加载捆绑包吗?

0 个答案:

没有答案