能否在Grav的Twig模板中加载.js文件作为内联JS代码?
解决Grav中Twig加载.js文件内联的问题
在Grav的Twig模板里,用include加载.js文件会报错,因为Twig默认只识别配置中的模板后缀(比如.twig),不会把.js当作模板文件处理。要实现类似PHPfile_get_contents的效果,直接读取.js文件内容并内联渲染,用Twig内置的source函数即可:
<script> {{ source(theme_dir ~ '/js/main.js') }} </script>
说明:
source函数是Twig原生函数,作用是读取指定路径下的文件内容并直接输出,不受模板后缀限制。theme_dir是Grav提供的全局变量,指向当前主题的根目录,确保路径准确指向你的.js文件位置。
这样渲染后就能得到你期望的内联JS代码:
<script> console.log('Works!'); </script>
内容的提问来源于stack exchange,提问作者stckvrw
相关产品推荐
相关产品推荐

