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

男女做受视频网站霍尔果斯建设局网站

男女做受视频网站,霍尔果斯建设局网站,wordpress 7天热门,宣传型企业网站什么是指令 在Vue中提供了一套为数据驱动视图更为方便的操作#xff0c;这些操作被称为指令系统。我们看到的v-来头的行内属性#xff0c;都是指令#xff0c;不同的指令可以完成或者实现不同的功能。 除了核心功能默认内置的指令#xff08;v-model和v-show#xff09;…什么是指令 在Vue中提供了一套为数据驱动视图更为方便的操作这些操作被称为指令系统。我们看到的v-来头的行内属性都是指令不同的指令可以完成或者实现不同的功能。 除了核心功能默认内置的指令v-model和v-showVue也允许注册自定义指令 指令使用的几种方式 //会实例化一个指令但这个指令没有参数 v-xxx// -- 将值传到指令中 v-xxxvalue // -- 将字符串传入到指令中如v-htmlp内容/p v-xxxstring // -- 传参数arg如v-bind:classclassName v-xxx:argvalue // -- 使用修饰符modifier v-xxx:arg.modifiervalue 如何实现 注册一个自定义指令类似于组件注册分为全局注册和局部注册。 全局注册Vue.directive局部注册组件directives属性 举例如下 Vue.directive第一个参数是指令的名字不需要加上v-前缀第二个参数可以是一个对象也可以是一个指令函数 Vue.directive(focus,{inserted:function(el){// 聚焦元素el.focus();//页面加载完成之后自动让输入框获取到焦点的小功能} }) 局部注册通过在组件options选项中设置directive属性 directive:{// 指令的定义focus:{inserted:function(el){el.focus()}} } 然后可以在模板中任何元素上使用v-focus指令如下 input v-focus / 自定义指令也想组件一样存在钩子函数 bind只调用一次指令第一次绑定到元素时调用。这里可以进行一次性的初始化设置inserted被绑定的元素插入父节点时调用仅保证父节点存在但是不一定已经被插入到文档中update所有组件VNode更新时调用但是可能发生在其子VNode更新之前。指令的值可能发生了改变也可能没有。这里你可以通过比较更新前后的值来忽略不必要的模板更新componentUpdate指令所在组件的VNode及其子VNode全部更新后调用unbind只调用一次指令与元素解绑时调用 所有钩子函数的参数都有以下 el指令所绑定的元素可以用来直接操作DOMbinding一个对象包含以下property name指令名不包含v-前缀value指令的绑定值例如v-my-directive“11”中绑定值为2。oldValue指令绑定的前一个值 仅在update和componentUpdate钩子中可用。无论值是否改变都可用。expression字符串形式的指令表达式。例如v-my-directive11中表达式为“11”arg传给指令的参数可选例如v-my-directive:foo中参数为“foo”modifiers一个包含修饰符的对象。例如v-my-directive.foo.bar中修饰符对象为{ foo: true, bar: true }vnodeVue编译生成的虚拟节点oldVnode上一个虚拟节点仅在update和componentUpdate钩子可用 注意除了el之外其他参数都应该是只读的切勿进行修改。如果需要再钩子之间共享数据建议通过元素的dataset来进行。 举个栗子 div v-demo{ color: white, text: hello! }/div scriptVue.directive(demo, function (el, binding) {console.log(binding.value.color) // whiteconsole.log(binding.value.text) // hello!}) /script 应用场景 使用自定义指令可以满足我们的日常一些场景这里我列举几个我在项目中用到的自定义指令 表单防止重复提交一键copy的功能 防止表单重复提交 Vue.directive(throttle, {inserted(el, binding) {// 获取指令参数时间没有则默认赋值为2000let throttleTime parseInt(binding.value) || 2000el.addEventListener(click, () {// 第一次执行if (!el.disabled) {// 如果是第一次执行则表示可以进行点击操作el.disabled truesetTimeout(() {el.disabled false}, throttleTime)}})} })// 2.为button标签设置v-throttle自定义指令 Button sizelarge typesuccess v-throttle5000新增/Button 一键复制功能 // 一键复制自定义指令 Vue.directive(copy, {// 选取文本框内容// 执行浏览器复制命令// 复制命令会将当前选中的内容复制到剪切板中这里就是创建的input标签// Input要在正常的编辑状态下原生复制方法才会生效inserted (el, binding) {if (!binding.value) {Message.error(请传入需要复制的内容)return}el.addEventListener(click, () {console.log(binding.value, binding.value) // 模拟输入框let cInput document.createElement(input)if (binding.value.newAccount ) {cInput.value 密码 binding.value.newPassword} else {cInput.value 企业名称${binding.value.newCompanyName} , 用户名${binding.value.newWebAccount} , 密码${binding.value.newPassword};}document.body.appendChild(cInput);cInput.select();document.execCommand(copy);Message.success(复制成功)document.body.removeChild(cInput);this.dialogVisible false;// 这个根据自己业务自定义Vue.prototype.$emit(afterComfirm);})},componentUpdated(el, { value }) {el.$value value;}, })// 为button标签设置v-copy自定义指令 Button sizelarge typesuccess v-copyinfoObj新增/Button// 其中infoObj如下 infoObj:{newPassword:this.newPassword,newAccount:this.newAccount... }// 后面可以扩展将字段为传入的字段不要写死
http://www.w-s-a.com/news/523875/

相关文章:

  • 平面设计和建设网站的区别公司官网静态
  • h5网站建设+案例住房住房和城乡建设部网站
  • 建设股公司网站东莞建设网网上平台
  • 湖州吴兴建设局网站加强网站建设的
  • 茌平做网站公司专业商城网站建设报价
  • 网站结构图怎么画wordpress注册不发送件
  • 个人备案网站可以做论坛吗电商推广方式有哪些
  • 网站建设 自适应国内最近的新闻
  • 校园网站开发背景吴江网站建设公司
  • 网站开发工程师发展趋势山东省建设工程电子信息网站
  • 适合大学生创业的网站建设类型吉林省舒兰市建设银行网站
  • 呼和浩特网站建设哪家好培训学校加盟费用
  • 网站如何做友情链接有道云笔记WordPress
  • 贵阳企业网站建设制作赤峰浩诚网站建设公司
  • asp官方网站微信模板素材
  • wordpress 留言给站长发邮件做百度推广员赚钱吗
  • 北京建站公司做网站价格专门找人做软件的网站
  • 商务网站的特点ui软件界面设计
  • 广州个性化网站开发网站索引量是什么意思
  • 公司网站制作专业公司python做后台网站的多吗
  • 桂林建站平台哪家好给别人做网站怎么收取费用
  • python做网站显示表格用visual做的网站
  • 彩票网站建设需要什么聊城网站建设首选天成网络
  • 安徽建设工程网站wordpress标签云代码
  • 推荐佛山顺德网站建设手机网站建设域名空间
  • 电子商务网站建设策划书例子企业官网用什么cms系统
  • 网站栏目设计怎么写平面设计接单报价表
  • 做网站美工要学什么网站推广的方法包括
  • 哪个网站可以做笔译兼职wordpress加表单
  • 百度站内搜索 wordpress微餐饮建站费用