vue指令v-html使用过滤器filters功能实例
问题
2.0 filters only work in mustache tags and v-bind.
Vue2.0 不再支持在 v-html 中使用过滤器,比如在 1.0 中是这样使用的:
{{{ option.title | highlight }}}
然而,现在不能使用了,Vue2.0 的过滤器现在只能应用在 {{ }} 和 v-bind 中。
然而,嫌麻烦,还想使用怎么办?
解决方法
- 使用全局方法
- 使用 computed 属性
- 使用 $options.filters
使用全局方法
put your highlight into methods, and v-html="highlight(option.title)"
可以在 Vue 上定义全局方法:
Vue.prototype.highlight= function (sTitle) { // to do };
然后所有组件上都可以直接用这个方法了:
v-html="highlight(option.title)"
使用 computed 属性
- What if I have a filter that outputs HTML? Do I have to use a computed property or is there a better way?
- Computed properties are the best way. You get automatic caching.
当然,可以使用计算属性 computed,返回原生 html 给 v-html 即可。
使用 $options.filters
You can use $options.filters
v-html="$options.filters.highlight(option.title)".
这个方式在文档中并没有说明,但是这也是可靠的方法。
You can safely rely on that: $options are the options passed to the Vue constructor when creating a vm (so any component or new Vue). From that point on is just javascript
以上就是本次介绍的关于vue指令v-html使用的全部知识点,感谢大家的阅读和对我们的支持。
相关推荐
-
vue.js使用v-pre与v-html输出HTML操作示例
本文实例讲述了vue.js使用v-pre与v-html输出HTML操作.分享给大家供大家参考,具体如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-
-
Vue指令之 v-cloak、v-text、v-html实例详解
v-cloak 当用户频繁刷新页面或网速慢时,页面未完成 Vue.js 的加载时,导致 Vue 来不及渲染,这就会导致在浏览器中直接暴露插值(表达式),Vue由此也给出了解决方法. 在指定标签或整个父容器加入v-cloak指令,通过css选择器选中v-cloak,隐藏元素即可. // html <div v-cloak id="app"> <span>{{ msg }}</span> </div> // css [v-cloak]{ di
-
详解三种方式解决vue中v-html元素中标签样式
Vue为v-html中标签添加CSS样式 <template> <div class="hello"> <section> <h2 class="title">{{news.title}}</h2> <p class="news-time">{{news.datetime}}</p> <div class="con" v-html=&qu
-
vue 插值 v-once,v-text, v-html详解
引入Vue.js ,通过script形式,vue官网语法记录 创建vue应用,数据和 DOM 已经被建立了关联,所有东西都是响应式的 1:插值 缺点:让你的网速慢,或者数据加载失败时,会在浏览器中直接渲染插值[js禁用,javascript报错也会导致这个问题] html: <section id="content"> <p id="Mustache">没有v-once, {{msg}}</p> </section>
-
vue指令v-html使用过滤器filters功能实例
问题 2.0 filters only work in mustache tags and v-bind. Vue2.0 不再支持在 v-html 中使用过滤器,比如在 1.0 中是这样使用的: {{{ option.title | highlight }}} 然而,现在不能使用了,Vue2.0 的过滤器现在只能应用在 {{ }} 和 v-bind 中. 然而,嫌麻烦,还想使用怎么办? 解决方法 使用全局方法 使用 computed 属性 使用 $options.filters 使用全局方法 p
-
Vue 指令实现按钮级别权限管理功能
在项目中经常有需求要根据用户的权限对界面上的元素进行控制,这里介绍了一直简单的实现,仅供参考. 当前用户的权限列表储存在 store 里,也可以是其他地方. 指令 // src/directives/permission.js import Vue from 'vue'; import store from '@/store'; import {get} from '@/utils'; // 是否有权限 const hasPermission = userPermission => { let
-
基于vue与element实现创建试卷相关功能(实例代码)
由于最近在一个项目中需要实现创建试卷与预览试卷的功能,所以就自己动手写了一个,效果还不错,目前项目已经交付使用,今天就先和大家分享一下创建试卷. 创建试卷 先放一下效果图 首先是试卷的相关设置 考试对象是通过接口返回的数据 <span class="content-label">选择考试对象</span> <el-form-item prop="roleList"> <el-select v-model="form
-
vue.js+Echarts开发图表放大缩小功能实例
最近使用echarts来开发某系统的图表功能,先申明我以前用的ext.js,ext.js对图表有自己的一套组件,用起来也很方便.但是由于ext.js过于臃肿,公司决定使用echarts来开发图表功能.当我们使用的时候才悲催的发现,echart绘制之后,不能随着容器div的大小而变化.而我们所开发的图表是需要有放大缩小功能,于是在网上找了很久,也没有找到合适的答案,大部分是通过监听窗口大小改变事件来设置,然而并不是我们所需要的.于是自己用了一点点时间,了解了为何echarts不能重新渲染,原来是在
-
VUE利用vuex模拟实现新闻点赞功能实例
回顾新闻详细页 很早我们的新闻详情页是在news-detail.vue 组件里,获取服务器数据,然后把数据保持到组件的data 里,既然我们已经用到了vuex,学习了它的state,我们就应该想到把返回的数据交给state 来存储. 1.首先在Vuex.Store 实例化的时候: state:{ user_name:"", newslist:[], newsdetail:{} }, 增加一个newsdetail 对象,newslist 数组是我们前面用来保存新闻列表数据的. 2.下面就
-
vue实现百度搜索下拉提示功能实例
这段代码用到vuejs和vue-resouece.实现对接智能提示接口,并通过上下键选择提示项,按enter进行搜索 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript" src="
-
Vue过滤器filters的用法及时间戳转换问题
目录 一.速识概念: 二.局部过滤器: 三.全局过滤器: 四.扩展: 五.总结: 本文分享自华为云社区<三分钟掌握Vue过滤器filters及时间戳转换>,作者:北极光之夜.. 一.速识概念: 大家好呀,Vue的filters过滤器是比较常见的一个知识点,下面我将结合时间戳转换的例子带你快速了解filters的用法~ 按照官方的活来说,Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化.过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)
-
解决vue过滤器filters获取不到this对象的问题
目录 vue过滤器filters获取不到this对象 原理 下面举个例子 Vue filters this指向问题 Vue实例中filter不依赖于当前vue实例上下文 vue过滤器filters获取不到this对象 原理 在data中定义一个属性that,把this存储到that中 在调用filters中的方法sum的时候将that传进去即可 下面举个例子 用filters计算data中 a+b 的值 注意:filters中的sum方法的第一个参数是|左边那个a,第二个参数才是括号写的that
-
Vue 过滤器filters及基本用法
1.示例代码 采用vue单文件组件,使用moment插件格式化日期 <template> <div> <h1>{{date | dateFormat}}</h1> </div> </template> <script> import moment from 'moment'; import 'moment/locale/zh-cn'; moment.locale('zh-cn'); export default { dat
随机推荐
- AngularJS 简单应用实例
- javascript时间戳和日期字符串相互转换代码(超简单)
- js console.log打印对像与数组用法详解
- VS2015正式版安装教程
- php实现水仙花数的4个示例分享
- 用文本文件制作留言板提示(上)
- 浅要分析Python程序与C程序的结合使用
- Mac Android Studio 3.0 Terminal 中文乱码问题处理
- Android自定义ScrollView实现放大回弹效果
- php ajax异步读取rss文档数据
- CSS中div、span和center元素
- 浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
- mysql常见错误集锦
- PDO预处理语句PDOStatement对象使用总结
- ThinkPHP实现简单登陆功能
- jquery通过load获取文件的内容并跳到锚点的方法
- Ext JS动态加载JavaScript创建窗体的方法
- javascript 冒号 使用说明
- 查杀软件 360安全卫士 v3.2.1.1001 下载
- 浅谈Java自动装箱与拆箱及其陷阱