kann ein Zauberer mich wissen lassen, ob es möglich ist, einen Helfer in einem anderen Helfer anzurufen. Ich muss einen i18n Helper in einem Datumsformat-Helfer aufrufen. Ich kann es nicht zur Arbeit bringen. Ich frage mich, ob das mit diesem Plugin überhaupt möglich ist.NodeJs-Lenker i18Nächste Helfer in einem anderen Helfer rufen
hier ist mein Setup:
const express = require('express');
const i18next = require('i18next');
i18next.init(options);
app.use(i18nextMiddleware.handle(i18next));
app.post(path.join(__dirname,'/locales/add/{{ns}}/{{lng}}'), i18nextMiddleware.missingKeyHandler(i18next));
app.get(path.join(__dirname,'/locales/resources.json'), i18nextMiddleware.getResourcesHandler(i18next));
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine('hbs', exphbs({
extname: 'hbs',
defaultLayout: 'main_layout',
layoutDir: path.join(__dirname, 'views/layouts/'),
partialsDir: path.join(__dirname,'views/partials/'),
helpers: {
i18n: function(key, options){
var result = this.t(key, options.hash);
return new Handlebars.SafeString(result);
},
formatExpire: function (namespace, date, format, lang) {
// strText = "expired On";
// strText = Handlebars.i18n.t('namespace:translationString'); // Cannot read property 't' of undefined
// strText = Handlebars.i18n('namespace:translationString'); // Handlebars.i18n is not a function
strText = Handlebars._default_helpers['i18n'].t('namespace:translationString'); // t is not a function
htmlDisplay = "<span class='bg-danger-800 text-highlight'>" + strText + "<span class='text-semibold'></span></span>";
return htmlDisplay;
}
...
....
}
})
)
app.set('view engine', 'hbs');
alles andere funktioniert gut, all die Helfer, ich habe keine Probleme mit. nur wenn ich "formateExpire" anrufe, bekomme ich die Fehler als Kommentare in der Hilfsfunktion aufgelistet.
Jede Hilfe würde sehr geschätzt werden.
dank
funktioniert nicht ich erhalte: Typeerror: Handlebars.helpers.i18n ist keine Funktion wenn ich eine Konsolenprotokoll (Handelbars.helpers) Bekomme ich: {blockHelperMissing: [Funktion], jeder: [Funktion], helperMissing: [Funktion], wenn: [Funktion], es sei denn: [Funktion], log: [Funktion], Lookup: [Funktion], mit: [Funktion]} es wird nur in dem eingebauten Anzeigen Lenkerhelfer, keiner meiner Cutom Helfer ist gelistet. – boulepick