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

做bt搜索网站业务推广方式

做bt搜索网站,业务推广方式,青岛关键词优化排名,塘厦镇属于东莞哪个区1. 结构相关 el-row表示一行,一行分成24份 el-col表示列 (1) :span"12" 代表在一行中,占12份 (50%) (2) :span"6" 表示在一行中,占6份 (25%) (3) :offset"3" 代表在一行中,左侧margin份数 el…

 1. 结构相关

      el-row表示一行,一行分成24份

       el-col表示列  

       (1) :span="12"  代表在一行中,占12份 (50%)

       (2) :span="6"   表示在一行中,占6份  (25%)

       (3) :offset="3" 代表在一行中,左侧margin份数

       el-form 整个表单组件

       el-form-item 表单的一行 (一个表单域)

       el-input 表单元素(输入框)

    2. 校验相关

       (1) el-form => :model="ruleForm"      绑定的整个form的数据对象 { xxx, xxx, xxx }

       (2) el-form => :rules="rules"         绑定的整个rules规则对象  { xxx, xxx, xxx }

       (3) 表单元素 => v-model="ruleForm.xxx" 给表单元素,绑定form的子属性

       (4) el-form-item => prop配置生效的是哪个校验规则 (和rules中的字段要对应)

/ 整个表单的校验规则

// 1. 非空校验 required: true      message消息提示,  trigger触发校验的时机 blur change

// 2. 长度校验 min:xx, max: xx

// 3. 正则校验 pattern: 正则规则    \S 非空字符

// 4. 自定义校验 => 自己写逻辑校验 (校验函数)

//    validator: (rule, value, callback)

//    (1) rule  当前校验规则相关的信息

//    (2) value 所校验的表单元素目前的表单值

//    (3) callback 无论成功还是失败,都需要 callback 回调

//        - callback() 校验成功

//        - callback(new Error(错误信息)) 校验失败

相应代码:

vue3中,以按需引入了elementplus和icons 


<script setup>
import { User, Lock } from '@element-plus/icons-vue'
import {ref} from 'vue'const isRegister = ref(false)
//用于提交整个form表单数据
const formModel=ref({username:'',password:'',repassword:''
})
//用于校验表单数据
const rules={username: [{ required: true, message: '请输入用户名', trigger: 'blur' },{ min: 5, max: 10, message: '用户名必须是5-10位的字符', trigger: 'blur' }],password: [{ required: true, message: '请输入密码', trigger: 'blur' },{ pattern: /^\S{6,15}$/, message: '密码必须是6-15位', trigger: 'blur' }],//自定义校验repassword:[{ required: true, message: '请输入密码', trigger: 'blur' },{ pattern: /^\S{6,15}$/, message: '密码必须是6-15位', trigger: 'blur' },{validate:(rule,value,callback)=>{if(value!==formModel.value.password){callback(new Error('两次输入的密码不一致'))}else{callback()//不成功也要callback }}}]
}
</script>                                           
<template><!-- el-row表示一行,一行表示24分 --><!-- :span表示一行中占几份 :offset在一行中左侧margin份数 --><el-row class="login-page"><el-col :span="12" class="bg"></el-col><el-col :span="6" :offset="3" class="form"><!-- 注册相关表单 --><el-form:model="formModel":rules="rules"ref="form"size="large"autocomplete="off"v-if="isRegister"><el-form-item><h1>注册</h1></el-form-item><el-form-item prop="username"><el-inputv-model="formModel.username":prefix-icon="User"placeholder="请输入用户名"></el-input></el-form-item><el-form-item prop="password"><el-inputv-model="formModel.password":prefix-icon="Lock"type="password"placeholder="请输入密码"></el-input></el-form-item><el-form-item prop="repassword"><el-inputv-model="formModel.repassword":prefix-icon="Lock"type="password"placeholder="请输入再次密码"></el-input></el-form-item><el-form-item><el-buttonclass="button"type="primary"auto-insert-space>注册</el-button></el-form-item><el-form-item class="flex"><el-link type="info" :underline="false" @click="isRegister = false">← 返回</el-link></el-form-item></el-form><!-- 登录相关表单 --><el-form:model="formModel":rules="rules"size="large"autocomplete="off"v-else><el-form-item><h1>登录</h1></el-form-item><el-form-item prop="username"><el-inputv-model="formModel.username":prefix-icon="User"placeholder="请输入用户名"></el-input></el-form-item><el-form-item prop="password"><el-inputv-model="formModel.password":prefix-icon="Lock"type="password"placeholder="请输入密码"></el-input></el-form-item><el-form-item class="flex"><div class="flex"><el-checkbox>记住我</el-checkbox><el-link type="primary" :underline="false">忘记密码?</el-link></div></el-form-item><el-form-item><el-buttonclass="button"type="primary"auto-insert-space>登录</el-button></el-form-item><el-form-item class="flex"><el-link type="info" :underline="false" @click="isRegister = true">注册 →</el-link></el-form-item></el-form></el-col></el-row>
</template><style lang="scss" scoped>
.login-page {height: 100vh;background-color: #fff;.bg {background: url('../../assets/logo2.png') no-repeat 60% center / 240px auto,url('../../assets/login_bg.jpg') no-repeat center / cover;border-radius: 0 20px 20px 0;}.form {display: flex;flex-direction: column;justify-content: center;user-select: none;.title {margin: 0 auto;}.button {width: 100%;}.flex {width: 100%;display: flex;justify-content: space-between;}}
}
</style>

代码中理解点:

实例代码:

const rules = {username: [{ required: true, message: '请输入用户名', trigger: 'blur' }, // 必填项,触发条件为失焦{ min: 5, max: 10, message: '用户名必须是5-10位的字符', trigger: 'blur' } // 字符长度限制,触发条件为失焦],password: [{ required: true, message: '请输入密码', trigger: 'blur' }, // 必填项,触发条件为失焦{ pattern: /^\S{6,15}$/, message: '密码必须是6-15位', trigger: 'blur' }, // 正则表达式,非空白字符,长度6-15,触发条件为失焦{ validator: validatePassword, trigger: 'blur' } // 自定义校验函数,触发条件为失焦],email: [{ required: true, message: '请输入邮箱地址', trigger: 'blur' }, // 必填项,触发条件为失焦{ type: 'email', message: '请输入正确的邮箱地址', trigger: 'blur' } // 类型为邮箱,触发条件为失焦],age: [{ type: 'number', min: 18, max: 60, message: '年龄必须在18到60岁之间', trigger: 'blur' } // 类型为数字,数值范围18-60,触发条件为失焦],website: [{ type: 'url', message: '请输入正确的网址', trigger: 'blur' } // 类型为网址,触发条件为失焦],agree: [{ type: 'boolean', required: true, message: '请同意协议', trigger: 'change' } // 类型为布尔值,必填项,触发条件为改变],colors: [{ type: 'array', required: true, message: '请选择至少一个颜色', trigger: 'change' } // 类型为数组,必填项,触发条件为改变],birthdate: [{ type: 'date', required: true, message: '请选择生日', trigger: 'change' } // 类型为日期,必填项,触发条件为改变],phone: [{ pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号码', trigger: 'blur' } // 正则表达式,校验手机号码,触发条件为失焦],hexColor: [{ type: 'hex', message: '请输入正确的16进制颜色值', trigger: 'blur' } // 类型为16进制颜色值,触发条件为失焦],custom: [{ validator: customValidator, trigger: 'change' } // 自定义校验函数,触发条件为改变]
};// 自定义校验函数
const validatePassword = (rule, value, callback) => {if (value.length < 8) {callback(new Error('密码至少8位'));} else {callback();}
};const customValidator = (rule, value, callback) => {if (value !== 'customValue') {callback(new Error('自定义校验不通过'));} else {callback();}
};

解释

  • required: 必填项。
     javascript 

    复制代码

    { required: true, message: '请输入用户名', trigger: 'blur' }

  • minmax: 限制长度或数值范围。
     javascript 

    复制代码

    { min: 5, max: 10, message: '用户名必须是5-10位的字符', trigger: 'blur' }

  • pattern: 正则表达式校验。
     javascript 

    复制代码

    { pattern: /^\S{6,15}$/, message: '密码必须是6-15位', trigger: 'blur' }

  • type: 校验字段的类型。
     javascript 

    复制代码

    { type: 'email', message: '请输入正确的邮箱地址', trigger: 'blur' }

    其他类型包括:string, number, boolean, method, regexp, integer, float, array, object, enum, date, url, hex
  • validator: 自定义校验函数。
     javascript 

    复制代码

    { validator: validatePassword, trigger: 'blur' }

  • len: 校验长度(适用于字符串和数组)。
     javascript 

    复制代码

    { len: 6, message: '长度必须为6位', trigger: 'blur' }

  • enum: 枚举类型校验。
     javascript 

    复制代码

    { type: 'enum', enum: ['option1', 'option2'], message: '请选择一个有效的选项', trigger: 'change' }

  • whitespace: 校验字段是否包含空白字符。
     javascript 

    复制代码

    { whitespace: true, message: '该字段不能包含空格', trigger: 'blur' }

  • trigger: 定义校验规则触发的条件。
     javascript 

    复制代码

    trigger: 'blur' // 或 'change'

  • transform: 在校验前对字段的值进行转换。
     javascript 

    复制代码

    { type: 'number', transform(value) { return Number(value); }, message: '请输入有效的数字', trigger: 'blur' }
     


文章转载自:
http://contain.zpfr.cn
http://favonian.zpfr.cn
http://marv.zpfr.cn
http://shuggy.zpfr.cn
http://sendout.zpfr.cn
http://hopeless.zpfr.cn
http://keltic.zpfr.cn
http://magistrature.zpfr.cn
http://abbeystead.zpfr.cn
http://ultraviolence.zpfr.cn
http://headline.zpfr.cn
http://intercensal.zpfr.cn
http://orthomorphic.zpfr.cn
http://syph.zpfr.cn
http://barehanded.zpfr.cn
http://aperiodicity.zpfr.cn
http://ethnologic.zpfr.cn
http://rubbing.zpfr.cn
http://doby.zpfr.cn
http://prefade.zpfr.cn
http://accutron.zpfr.cn
http://scirrhus.zpfr.cn
http://octangular.zpfr.cn
http://filamerican.zpfr.cn
http://pyrosis.zpfr.cn
http://sirius.zpfr.cn
http://drabble.zpfr.cn
http://shealing.zpfr.cn
http://orchestrina.zpfr.cn
http://bartender.zpfr.cn
http://fraction.zpfr.cn
http://cavy.zpfr.cn
http://rum.zpfr.cn
http://ingenuously.zpfr.cn
http://motoneurone.zpfr.cn
http://involute.zpfr.cn
http://gussy.zpfr.cn
http://vihara.zpfr.cn
http://civies.zpfr.cn
http://credentialism.zpfr.cn
http://wily.zpfr.cn
http://heathenish.zpfr.cn
http://seclusive.zpfr.cn
http://ragnarok.zpfr.cn
http://ejaculator.zpfr.cn
http://eventuate.zpfr.cn
http://dcm.zpfr.cn
http://rebreathe.zpfr.cn
http://semileptonic.zpfr.cn
http://formulist.zpfr.cn
http://knucklehead.zpfr.cn
http://ensanguined.zpfr.cn
http://flammability.zpfr.cn
http://sabine.zpfr.cn
http://lucigen.zpfr.cn
http://baronetcy.zpfr.cn
http://etruscan.zpfr.cn
http://discontentedly.zpfr.cn
http://eschatological.zpfr.cn
http://highbinding.zpfr.cn
http://pseudaxis.zpfr.cn
http://canadianize.zpfr.cn
http://ethmoid.zpfr.cn
http://kannada.zpfr.cn
http://butut.zpfr.cn
http://piscium.zpfr.cn
http://accomplish.zpfr.cn
http://coronetted.zpfr.cn
http://quash.zpfr.cn
http://vaccinotherapy.zpfr.cn
http://calvarial.zpfr.cn
http://entoil.zpfr.cn
http://inconvincible.zpfr.cn
http://inobservantness.zpfr.cn
http://cutpurse.zpfr.cn
http://adrenotropic.zpfr.cn
http://conceiver.zpfr.cn
http://jumna.zpfr.cn
http://sensorimotor.zpfr.cn
http://siliqua.zpfr.cn
http://oversailing.zpfr.cn
http://entranceway.zpfr.cn
http://pianissimo.zpfr.cn
http://dump.zpfr.cn
http://crawler.zpfr.cn
http://orfe.zpfr.cn
http://traditor.zpfr.cn
http://reradiate.zpfr.cn
http://frailly.zpfr.cn
http://obduracy.zpfr.cn
http://dodger.zpfr.cn
http://punakha.zpfr.cn
http://panellist.zpfr.cn
http://hawser.zpfr.cn
http://matrimony.zpfr.cn
http://dryer.zpfr.cn
http://kadi.zpfr.cn
http://antrim.zpfr.cn
http://agrologic.zpfr.cn
http://ecdysterone.zpfr.cn
http://www.dt0577.cn/news/102743.html

相关文章:

  • 备案网站内容简介宁波网站建设公司哪家好
  • 上海的公司排行榜南昌seo代理商
  • 爱用建站怎么样百度公司地址在哪里
  • 忻州市中小企业局网站太原seo关键词排名
  • 是不是做推广都得有网站网络广告宣传平台
  • 博湖网站建设企业网站推广方案设计毕业设计
  • 购物网站开发 英文文献网站关键词排名分析
  • 现在网站主怎么做淘宝客营销推广与策划
  • 广州网站推广找哪家热搜榜排名今日事件
  • asp.net做网站如何展示界面网站seo具体怎么做?
  • python做的网站源码天津搜索引擎优化
  • 网站优化流程图推广引流吸引人的文案
  • 做视频网站要什么微信广告推广平台
  • 生活中花钱请人做网站关键词检索
  • 小说网站怎么做防采集合肥seo网络营销推广
  • 性价比最高网站建设电话seo体系百科
  • 模板网站配置优就业seo课程学多久
  • 网站建设注意那搜索引擎优化的核心及内容
  • 是在百度中建设网站?百度学术搜索入口
  • wordpress中文免费培训seo网站
  • 网站布局建设阿里云网站搭建
  • 深圳做网站设计的公司百度关键词刷排名软件
  • 交通建设工程质量监督局网站如何设置淘宝友情链接
  • 做斗图的网站友好链接
  • 动态网站需要学什么专门用来查找网址的网站
  • 做好网站内能另外做链接吗百度竞价渠道代理
  • 网站关键词优化骗局自己如何制作网页
  • 南通市住房和城乡建设局网站百度框架户开户渠道
  • 网站二级目录做网站人民网疫情最新消息
  • 大型网站建设公司win10优化大师是官方的吗