当前位置: 首页 > wzjs >正文

可以用腾讯企业邮箱域名做网站外贸谷歌优化

可以用腾讯企业邮箱域名做网站,外贸谷歌优化,互联网推广代理,wordpress data src一、自定义指令 1、自己封装指令 什么是指令?指令本质上就是DOM功能的一种抽象封装。 如果有一些DOM功能经常用,但是Vue没有提供相关指令,建议自己封装。 2、自定义全局指令 使用Vue.directive(指令名, function() {})定义全局指令。 3、…

一、自定义指令

1、自己封装指令
什么是指令?指令本质上就是DOM功能的一种抽象封装。

如果有一些DOM功能经常用,但是Vue没有提供相关指令,建议自己封装。

2、自定义全局指令
使用Vue.directive('指令名', function() {})定义全局指令。

3、自定义局部指令
使用directives: {}定义局部指令,只能在当前组件中使用。

(1)使用function写法

directives: {// function写法'color': function(el, binding, vnode) {console.log('---el', el) // 指令所对应的DOM节点console.log('---binding', binding) // 绑定的值/表达式console.log('---vnode', vnode) // 当前的虚拟DOMel.style.color = binding.value}
}

接收3个参数:
el:指令所对应的DOM节点
binding:绑定的值/表达式
vnode:当前的虚拟DOM

(2)使用对象写法

directives: {// function写法'color': function(el, binding, vnode) {console.log('---el', el) // 指令所对应的DOM节点console.log('---binding', binding) // 绑定的值/表达式console.log('---vnode', vnode) // 当前的虚拟DOMel.style.color = binding.value},// 对象写法'color2': {bind(el, binding) { // 绑定cc变量的时候el.style.color = binding.value},update(el, binding) { // 修改cc变量的时候el.style.color = binding.value}}
}

还有其它的钩子。

注:function写法,等价于bind + update这两个。

二、例子代码

自己封装一个指令v-form,类似于v-model指令实现双向绑定。
必须要用虚拟DOM的上下文实现。

<html>
<head><title>自定义指令</title><style></style>
</head>
<body><div id="app"><h1 v-color='"red"'>测试</h1><h1 v-color='"blue"'>测试</h1><h1 v-color2="cc">测试</h1><input type="text" v-form.lazy="name" /></div><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script><script>Vue.directive ('form', {bind(el, binding, vnode) {console.log('---el', el)console.log('---binding', binding)console.log('---vnode', vnode)// 解构赋值const { lazy } = binding.modifiers// v-bind:value// 指令在绑值的时候,改上下文中的值el.value = vnode.context[binding.expression]// v-on:input// 实现双向绑定el.addEventListener(lazy?'blur':'input', function(ev){console.log('---事件', ev.target.value)vnode.context[binding.expression] = ev.target.value})},update(el, binding, vnode) {// 实现双向绑定el.value = vnode.context[binding.expression]}})const app = new Vue({data() {return {cc: "green",name: '张三'}},directives: {// function写法'color': function(el, binding, vnode) {//console.log('---el', el) // 指令所对应的DOM节点//console.log('---binding', binding) // 绑定的值/表达式//console.log('---vnode', vnode) // 当前的虚拟DOMel.style.color = binding.value},// 对象写法'color2': {bind(el, binding) { // 绑定cc变量的时候el.style.color = binding.value},update(el, binding) { // 修改cc变量的时候el.style.color = binding.value}}}})app.$mount('#app')</script></body>
</html>

http://www.dtcms.com/wzjs/531331.html

相关文章:

  • 做网站视频一般上传到哪里前端开发培训机构推荐
  • 多城市网站设计百度收录检测
  • 12306网站建设超30亿互动营销案例100
  • 南宁商城网站建设贵州seo技术查询
  • 网站建设相关关键词百度推广方法
  • 阳泉企业网站建设公司网站优化排名软件
  • 有字体设计网站seo提升排名
  • 中国建设银行官方网站纪念币免费b站推广网站入口202
  • 武汉网络公司武汉做网站公司网站排名查询
  • 微信扫码抢红包网站做海外新闻app
  • 城建网站论坛 建设电商项目策划书
  • 北京 网站 优化杭州seo网站推广排名
  • 义乌网站大数据精准获客软件
  • 哈尔滨的网站建设公司网站软件下载
  • 兰州网络营销推广价格seo搜索引擎优化关键词
  • 做网购网站应该注意什么plc培训机构哪家最好
  • 新发布一个网站公告怎么做优化推广服务
  • 做微信封面模板下载网站万网域名注册流程
  • 做家装的网站有哪些内容厦门网络推广哪家强
  • 网站平台需要做无形资产吗 怎么做6谷歌seo一个月费用需要2万吗
  • 黄冈网站建设有哪些百度助手免费下载
  • 张掖高端网站建设公司智能搜索引擎
  • 个人备案网站内不能出现什么内容seo怎么优化简述
  • 模版网站后期可以更换图片吗八八网
  • 西安网站运营北京网站排名seo
  • 大良营销网站建设价位百度一下电脑版首页网址
  • 1m的带宽做网站可以吗泰安短视频seo
  • 外国网站备案手机百度
  • 营销网站建设规划概念千锋教育官网
  • 校园网站建设建议抚顺网站seo