2016-07-23 11 views
0

Ich bin gerade dabei, einen Shop mit Node einzurichten, und es gibt eine Menge von Hilfsfunktionen, die ich über verschiedene Template-Dateien wiederverwenden werde (Dinge wie calc_taxes() ...) Aus irgendeinem seltsamen Grund bekomme ich einen Fehler in der Konsole, wenn ich versuche eine partielle Vorlage einzufügen, die nur Funktionen enthält.(NodeJs, Express) einschließlich einer EJS-Datei mit nur Funktionen führt zu einem Fehler

(ich verwende diese Syntax)

<%- include functions.ejs %> 

der Fehler Ich erhalte

express deprecated res.send(body, status): Use res.status(status).send(body) instead routes/errors.js:11:7 

Beispielcode

<% products.forEach(function(product){ %> 

     <div class="item" dkit-grid="col-3"> 
      <div class="item_img" dkit-grid="col-12"> 
       <img src="<%= get_product_image(product) %>"> 
      </div> 

      <div class="item_desc" dkit-grid="col-12"> 
       <a href="/produit/<%= get_product_slug(product) %>" class="item_name"> 
        <%= get_product_name(product) %> 
       </a> 
       <span class="item_price"> 
        <%= get_product_price(product) %> 
       </span> 
      </div> 
     </div> 

    <% }); %> 

ich mit einem getestet Datei mit Dummy-Inhalt t wie ein <h1>wowow</h1> und es ausgegeben ... Aber mit meiner Datei, die nur eine Reihe von Funktionserklärung enthält, bekomme ich nichts :(.

+0

Haben Sie 'routes/errors.js' und' res.send (arg11, arg2) 'in Zeile 11? –

Antwort

0

Nach vielem Versuch fand ich endlich einen Weg, dies zu tun. Wenn Sie den gleichen Fehler auftreten, oder Referenzfehler, müssen Sie zuerst Ihre app.js hinzuzufügen:

var fs = require('fs'); 

In Ihren Anruf enthalten, stellen Sie sicher, dass Sie diese Syntax verwenden:

<%- include functions.ejs %> 

Wenn Sie Funktionen erklären, stellen Sie sicher, dass Sie verwenden ‚var‘ nicht oder ‚lassen‘, weil Ihre Funktionen im Rahmen dieses Dokuments geklebt werden wird, hier ist ein Beispiel, das funktioniert:

get_product_slug = function(product){ 
    return product.slug; 
} 

Voilà!