Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.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
Regex 在Meteor中将HTML传递给模板_Regex_Meteor_Handlebars.js - Fatal编程技术网

Regex 在Meteor中将HTML传递给模板

Regex 在Meteor中将HTML传递给模板,regex,meteor,handlebars.js,Regex,Meteor,Handlebars.js,我正在制作我的第一个Meteor应用程序-正则表达式匹配器是我制作的第一个组件。它将在可编辑字符串中突出显示匹配项,方法是使用span标记包围匹配项 我找到了如何在vanilla JavaScript中围绕匹配创建标记的方法: 但我将其添加到Meteor模板中的方式是,这些标记显示在浏览器中。有没有办法让标签在浏览器中读取为html 以下是my.js文件中的相关代码: var str=“玉米有成千上万的用途……我现在就告诉你们所有这些。”; var regEx=/[A-Z]/g; if(Met

我正在制作我的第一个Meteor应用程序-正则表达式匹配器是我制作的第一个组件。它将在可编辑字符串中突出显示匹配项,方法是使用span标记包围匹配项

我找到了如何在vanilla JavaScript中围绕匹配创建标记的方法:

但我将其添加到Meteor模板中的方式是,这些标记显示在浏览器中。有没有办法让标签在浏览器中读取为html

以下是my.js文件中的相关代码:

var str=“玉米有成千上万的用途……我现在就告诉你们所有这些。”;
var regEx=/[A-Z]/g;
if(Meteor.isClient){
Template.sampleText.someText=函数(){
返回str.replace(regEx,(“span class='highlighted'>”+“$&“+”);
};
}
下面是my.html文件中的相关代码:

<template name="sampleText">
  {{someText}}
</template>

{{someText}}
这是服务器在页面上的输出:


玉米有成千上万的用途。。。span class='classhighted'>所有这些span class='classhighted'>我现在就告诉你。

你可以使用
把手。SafeString
,如把手中所示。在您的情况下,您可以:

if (Meteor.isClient) {
  Template.sampleText.someText = function() {
    var element = str.replace(regEx, ("span class='highlighted'>" + "$&" + "</span>") );
    return new Handlebars.SafeString(element);
  };
}
if(Meteor.isClient){
Template.sampleText.someText=函数(){
var element=str.replace(regEx,(“span class='highlighted'>”+“$&“+”);
返回新把手。安全字符串(元素);
};
}