Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jiren/filter.js与express和ejs文件-冲突_Javascript_Express_Filter_Ejs - Fatal编程技术网

Javascript jiren/filter.js与express和ejs文件-冲突

Javascript jiren/filter.js与express和ejs文件-冲突,javascript,express,filter,ejs,Javascript,Express,Filter,Ejs,我正在创建一个包含express/sequelize和ejs文件的应用程序。 现在我想使用Jiren的这个奇妙的过滤器解决方案,但是这个解决方案使用了与ejs变量相同的语法。 当我在脚本标记type=“text/html”中包含带有这些变量的模板时,它会触发一个错误(未定义,但会出现在我的include行中)。当我将模板更改为“john do”时,页面会显示,但我的控制台会给我带来“错误JSONquery未定义”(可能是两个不同的错误,我不确定,但JSONquery是filter.js插件的一部

我正在创建一个包含express/sequelize和ejs文件的应用程序。 现在我想使用Jiren的这个奇妙的过滤器解决方案,但是这个解决方案使用了与ejs变量相同的语法。 当我在脚本标记
type=“text/html”
中包含带有这些变量的模板时,它会触发一个错误(未定义,但会出现在我的include行中)。当我将模板更改为“john do”时,页面会显示,但我的控制台会给我带来“错误JSONquery未定义”(可能是两个不同的错误,我不确定,但JSONquery是filter.js插件的一部分)。我可以在这里显示我的模板

<script id="artists-template" type="text/html">
    <li 
         class="main__product-list-item" 
         data-height="<%= height %>" 
         data-width="<%= width %>" 
         data-low="<%= yearBegin %>"
         data-high="<%= yearEnd %>" 
         data-name='<%= artist %>' 
         data-longueur='<%= height %>' 
         data-largeur='<%= width%>'
         >
            <figure class="main__product">
             <a class="main__product-image-link" href="/name/<%= id %>">
            <% if(Images.length !== 0) { %>
            <img alt="illustration" src="./img/_thumb<%= Images[0]['adress'] %>.jpg"/>
            <% } else { %>
            <img alt="illustration" src="./img/icon-no-image.svg"/>
            <% } %>
        </a>
        <figcaption class="main__product-description">
            <h3>
               <a href="/name/<%= id %>">
                  <span class="product__title">"<%= title %>" - <%= artist %></span>
                   <span class="product__date">, <span class="product__period"><%= period %></span></span>
                </a>
            </h3>
            <p>
            Créé probablement entre <span class="product__low-date"><%= yearBegin %></span> et <span class="product__high-date"><%= yearEnd %></span>
            <br/>Hauteur : <span class="product__height"><%= height %></span>  cm / Largeur : <span class="product__width"><%= width %></span> cm

            <span class="main__product-description-story"><%= description %></span></p>
        </figcaption>
    </figure>
     </li>
 </script>

  • 可能性中心
    傲慢者:厘米/大人物:厘米

  • 当我只注入一个变量(如
    )时,也会出现同样的问题。以下是我如何绑定数据:

    <% var datas = JSON.stringify(creations) %>
    <script>
        var data = <%- datas %>;
        console.log(data);
     </script>
    
    
    var数据=;
    控制台日志(数据);
    
    我希望这只是一个简单的问题,我必须改变一个简单的字符,使其工作。此时,我认为最大的问题是关于“JsonQUERY未定义”的问题,因为即使我没有用数据绑定模板,必须用模板填充的区域实际上也没有绑定。 我试图用谷歌搜索错误,但什么也没找到。如果有人有任何想法…谢谢


    这是过滤器解决方案的网站:

    Hourrayyy!!!我已经找到了解决方案,我在谷歌上搜索了ejs冲突,发现关键是要更改插件语法:如果遇到同样的问题,请尝试更改这些行:

    var templateSettings = {
        evaluate    : /<%([\s\S]+?)%>/g,
        interpolate : /<%=([\s\S]+?)%>/g,
        escape      : /<%-([\s\S]+?)%>/g
     };
    
    现在我只需要使用这个语法:{{variable}},它工作正常

    var templateSettings = {
       interpolate: /\{\{(.+?)\}\}/g,
       escape: /\{\{\-(.+?)\}\}/g,
       evaluate: /\{\%(.+?)\%\}/g
    };