我们如何在 jsrender 中使用 substring(...) 等表达式
How can we use expressions such as substring(...) in jsrender
我有一个包含 500 个字符的段落 characters.I 想在第 155 个字符之后插入 ... 并且应该隐藏其他字符。如果有人知道 jsrender 中 substring 的语法和用法。指导我
JsRender 允许您在标签内使用表达式。
查看文档主题,例如 Tag syntax, or Paths and expressions。
你可以这样写:
{{:myfield.substring(0, 155)}}
或
{{:myfield.substring(0, 155) + '...'}}
或(对于您的完整场景):
{{:myfield.subscript(0, 155) + (myfield.length>155 ? '...' : '')}}
考虑到该表达式的复杂性,将其封装在辅助函数中会更清晰 (http://www.jsviews.com/#helpers) or custom tag (http://www.jsviews.com/#tags):
例如,您可以定义一个助手:
$.views.helpers("trimLength", function(value, maxLength) {
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{:~trimLength(myfield, 155)}}
或定义自定义标签:
$.views.tags("trim", function(value) {
var maxLength = this.tagCtx.props.maxLength;
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{trim myfield maxLength=155 /}}
我有一个包含 500 个字符的段落 characters.I 想在第 155 个字符之后插入 ... 并且应该隐藏其他字符。如果有人知道 jsrender 中 substring 的语法和用法。指导我
JsRender 允许您在标签内使用表达式。
查看文档主题,例如 Tag syntax, or Paths and expressions。
你可以这样写:
{{:myfield.substring(0, 155)}}
或
{{:myfield.substring(0, 155) + '...'}}
或(对于您的完整场景):
{{:myfield.subscript(0, 155) + (myfield.length>155 ? '...' : '')}}
考虑到该表达式的复杂性,将其封装在辅助函数中会更清晰 (http://www.jsviews.com/#helpers) or custom tag (http://www.jsviews.com/#tags):
例如,您可以定义一个助手:
$.views.helpers("trimLength", function(value, maxLength) {
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{:~trimLength(myfield, 155)}}
或定义自定义标签:
$.views.tags("trim", function(value) {
var maxLength = this.tagCtx.props.maxLength;
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{trim myfield maxLength=155 /}}