要应用内容过滤器的插槽中是否有内容过滤器?

为了澄清,我想截断HTML中手动包含的文本.例如,我想改变这一点:

<!-- In the view -->
<my-component>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cumque, 
laboriosam quasi rerum obcaecati dignissimos autem laudantium error 
quas voluptatibus debitis?
</my-component>

对此:

<!-- Generated component -->
<div>
Lorem ipsum dolor sit amet, consectetur adipisicing ...
</div

我似乎在文件中找不到这个信息.

非常感谢.

推荐答案

同样的事情,以类似的方式可以是:

在你的主要.js文件:

var filter = function(text, length, clamp){
    clamp = clamp || '...';
    var node = document.createElement('div');
    node.innerHTML = text;
    var content = node.textContent;
    return content.length > length ? content.slice(0, length) + clamp : content;
};

Vue.filter('truncate', filter);

在模板中:

{{data.content | truncate(300, '...')}}

Vue.js相关问答推荐

VueJS使所有组件崩溃,而不是只有一个

Vue3组合-如何在组件卸载时注销回调

VueI18n 无法读取或更改组合 API 中的区域设置

可组合数据获取示例

在移动版本中使用标准的 v-data-table

vue router/:param 斜杠的参数

如何对对象数组进行 v-model

VueJs this.method 不是函数?如何在 Vuejs 的另一个方法中调用一个方法?

在 vue 组件中检索配置和环境变量

Vue.js + Vuex:如何改变嵌套项状态?

全局方法和实例方法有什么区别?

Vue路由保持活动和挂载行为

如何在 Node.js 服务器上部署 Vue.js 应用程序

vuejs挂载生命周期未触发

如何使用 TypeScript 在 Vue.js 中指定非react性实例属性?

如何在 Vue 中动态创建组件上获取更新的 $refs?

安装后运行computed计算函数

'vue' 未被识别为内部或外部命令

$set 不是函数

返回 VueJS 方法的Native Code消息