JS Marko(raptor模板)在浏览器中加载动态模板路径

时间:2014-09-27 17:30:01

标签: javascript browserify marko

我正在尝试在Web应用程序中使用Marko模板,并且希望能够动态加载预编译的模板。我的(弱)理解是建议的raptor-optimizer进行静态分析以加载所有模板(如browserify),因此无法捆绑仅动态引用的模板。

是否可以这样做而无需对我可能感兴趣的每个可能的模板路径进行硬编码?是否有可能不必放弃concat并缩小raptor-optimizer / browserify的步骤?

first_tmpl = require('marko').load(require.resolve('./tmpl/first.marko'))
second_tmpl = require('marko').load(require.resolve('./tmpl/second.marko'))

https://github.com/raptorjs3/marko#browser-side-rendering

1 个答案:

答案 0 :(得分:3)

开箱即用,Browserify仅支持静态代码分析,以发现和捆绑依赖项。 RaptorJS Optimizer支持optimizer.json文件中的静态代码分析和声明性依赖。 RaptorJS Optimizer还支持glob模式,因此您可以在optimizer.json文件中执行以下操作:

{
    "dependencies": [
        "**/*.marko"
    ]
}

在大多数情况下,最好依靠通过静态代码分析发现所需的模板。

我希望有所帮助。

- 帕特里克