用变量更改模板引擎引入路径的问题

用变量更改模板引擎引入路径的问题

    <% include('./contentPage/我想这里换成变量.art') %>


我要怎么样才可以让模板引擎引入动态的模板,我想直接将文件路径0.art的0换成模板字符串想引入动态的模板,但是失败了,查了很久也没解决


https://img1.sycdn.imooc.com//climg/639b32210927cff407240277.jpg

我在 index.js 中设置了page=0,之后想在下图中直接用变量更改文件的地址(把0用变量替代掉),试了模板字符串,在网上查了<%=%>这个原始语法,都失败了

https://img1.sycdn.imooc.com//climg/639b32ac095f40c206330479.jpg


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小李 2022-12-16 11:16:05

同学你好,同学使用的方式路径处是没办法做到替换的。但可以在js中设置模块动态展现如下:

https://img1.sycdn.imooc.com//climg/639be2c309f936c406260284.jpg

或者在art文件中用判断的方式实现动态展示。

祝学习愉快!

  • 提问者 藩王 #1

    我换了一种教程里的方式向art中注入模板,下图为js代码

    https://img1.sycdn.imooc.com//climg/639c81d50911e1f406490223.jpg


    下图为content.art的代码

    https://img1.sycdn.imooc.com//climg/639c820d09366bc205720221.jpg


    但是页面输出没有被解析成标签对如图所示

    https://img1.sycdn.imooc.com//climg/639c824909884a0216160396.jpg


    console.log输出:

    https://img1.sycdn.imooc.com//climg/639c8287099f345909940460.jpg

    寻求有没有解决方案,因为这样引入真的很方便


    content.art


    <div id="content">

    {{ page }}

    </div>


    index.js

    import './content.css'

    import page0 from './contentPage/0/0.art'

    import render from './content.art';

    console.log(render({ page: page0}));


    document.getElementById('content').innerHTML=render({ page: page0})



    0.art

    <!-- 0 -->

    <div id='page0' class="page1">

    <p class='red'>首页</p>

    111

    </div>



    2022-12-16 22:39:56
  • 好帮手慕小李 回复 提问者 藩王 #2

    能明白同学的思路是什么,参考如下:

    https://img1.sycdn.imooc.com//climg/639d4049095cb74a18600661.jpg

    https://img1.sycdn.imooc.com//climg/639d4093099d7bb111840262.jpg

    祝学习愉快!

    2022-12-17 10:40:00
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师