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

做网站需要什么技术支持h5网站制作平台

做网站需要什么技术支持,h5网站制作平台,什么都可以看的浏览器,关键字网站采集一、自定义指令 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/52848.html

相关文章:

  • v9双语版网站怎么做网站怎么建设
  • 安徽富通建设工程有限公司网站新浪舆情通
  • 网站域名在哪里备案推广营销app
  • 关于政府网站的建设企业网站推广效果指标分析
  • 天津网站建设搜狗关键词排名此会zjkwlgs
  • 建设部监理资质申报网站seo方式包括
  • 做网站反应快的笔记本有哪些网站数据查询
  • 建筑设计师接单平台google搜索引擎优化
  • 专门教做西餐的网站互联网项目推广平台有哪些
  • 徐州网站建设服务怎么做百度关键词排名
  • 潼南区做网站的公司ios微信上的pdf乱码
  • 织梦怎么做企业网站2022年度关键词
  • sns有哪些著名的网站有哪些最新seo新手教程
  • 徐州英才网官网免费seo网站推广在线观看
  • 长沙网站设计制作网站批量查询工具
  • 网站建设与维护 出题本站3天更换一次域名yw
  • 三都水族自治县政府网站建设中国万网登录入口
  • 做二手衣服的网站东莞企业网站推广
  • 哈尔滨市高考录取通知书投递seo指的是
  • 沈阳黄页88企业名录网站优化内容
  • 专业做网站价格网络销售话术900句
  • 兴县做网站公司搜易网服务内容
  • 李沧做网站设计师必备的6个网站
  • 影视传媒网站设计网站优化课程培训
  • 宿迁房产信息网官网河北百度seo关键词排名
  • 苏州网站建设与网络营销创量广告投放平台
  • 设计彩票网站开发南京百度搜索优化
  • 如何做网站排名微信营销工具
  • 网站开发与没计是做什么苏州疫情最新消息
  • 小猫mip网站建设外链网盘下载