Template7 helper with additional strings

I have a custom helper for translations, which works with regular strings. But now I want to add a link start and end into translation placeholders and can’t seem to get the helper working when the arguments contain quotes. I don’t want to split up the translation placeholder, because the sentence order could change between languages.



%1$s should be replaced with <a href="mailto: ... ">
%2$s should be replaced with </a>

Usually, this type of translations with arguments work fine:

  {{js "__('__PLACEHOLDER_OWNER_NAME_%1$s__', this.owner.name)"}}

But I can’t get it working, if I want something like this:

  {{js "__('__PLACEHOLDER_SEND_EMAIL_%1$sCLICK_HERE%2$s__', '<a href=\"mailto:' + this.owner.email + '\">', '</a>')"}}

I’ve already tried to wrap it in a custom Template7 helper, but can’t get it working there as well. In a regular component, I could perform the translation in the pageInit event and just update the <p> content, but this doesn’t work in a list.

This will work:

{{js "__('__PLACEHOLDER_SEND_EMAIL_%1$sCLICK_HERE%2$s__', '<a href=mailto:'+this.owner.email+'>', '</a>')"}}

But in general doesn’t fit for this, it is better to use es template instead https://framework7.io/docs/router-component.html#es-template-literals