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

室内设计网站资源温泉网站建设

室内设计网站资源,温泉网站建设,咨询公司排名前十,淮南房产网el-dialog是使用率很高的组件 使用el-dialog很多都是按照文档的例子#xff0c;用一个变量控制是否显示#xff0c;再来一个变量控制标题。 如果我这个对话框多个地方使用的话还要创建多个变量#xff0c;甚至关闭之后还要清空一些变量#xff0c;应该可以简化一点。我写… el-dialog是使用率很高的组件 使用el-dialog很多都是按照文档的例子用一个变量控制是否显示再来一个变量控制标题。 如果我这个对话框多个地方使用的话还要创建多个变量甚至关闭之后还要清空一些变量应该可以简化一点。我写vue的时候奉行的都是数据驱动像刚才那种写法没有问题也更灵活反正都是数据驱动的即使错误了也只是某些地方没正确处理数据而已。 所以封装也需要保持这些优点灵活可控。 以下是封装代码 一个.vue文件表示封装的相应el-dialog代码 templateel-dialog:titleconfigData.titleconfigData.afterTitlev-modelconfigData.openwidth700px:close-on-click-modalfalseappend-to-bodydiv classedit-data-dialogh1哈哈哈代码封装/h1/divtemplate #footerdiv classdialog-footerel-button clickconfigData.open false取 消/el-button/div/template/el-dialog /templatescript /*** 数据修改对话框*/ import { defineComponent, ref, getCurrentInstance, reactive, nextTick } from vue; import { mergeObjProperty } from /common/OtherTools;export default defineComponent({name: EditDataDialog,emits: [onSuccess],components: {},setup(_, { emit }) {const configMap {//配置信息初始化时使用open: {oldValue: false,},title: {oldValue: XX数据,},afterTitle: {oldValue: ,},isShow: {//是否只是展示oldValue: false,},};const configData reactive(initDataByConfig(configData,{},configMap));const dataContainer reactive({loading:false,form:{},list:[],});/** 初始化数据外部调用 */function initData(show true, data_ {}, option {}) {initDataByConfig(configData,option,configMap);dataContainer.list [];dataContainer.form {};dataContainer.loading false;configData.open show;nextTick(() {dataContainer.form data_;getDataInfo();});}/** 获取数据列表 */function getDataInfo() {}return {configData,initData,dataContainer,};}, }); /scriptstyle langscss scoped .edit-data-dialog {} /style 一个很简单的例子不用创建多个变量来控制显示以及标题和各种杂七杂八的状态全部由外部指定再由initDataByConfig方法初始化。 以下是initDataByConfig方法的代码 /** * 根据配置信息初始化对象* 如果 option 有该属性则使用该属性没有则初始化* configMap example* const configMap {//配置信息初始化时使用open: {oldValue: false,},title: {oldValue: 入库,},afterTitle: {oldValue: ,},isShow: {//是否只是展示oldValue: false,},};*/ export function initDataByConfig(data {}, configOption {}, configMap {}) {configOption configOption || {};Object.keys(configMap).forEach(key {//初始化一些配置信息if (Object.prototype.hasOwnProperty.call(configOption, key)) {data[key] configOption[key];} else {if (typeof configMap[key].oldValue function) {data[key] configMap[key].oldValue();} else {data[key] configMap[key].oldValue;}}});return data; }使用的话直接引用然后用ref获取组件实例调用initData方法就行了。 这是我目前对el-dialog使用的简单封装所有数据皆可外部指定且不用创建多个变量更灵活可控。 反正就是好用的非常。 有些封装不仅仅是模块分离还有代码分离反正就是一句话代码是先写给人看的然后才是机器。我奉行的封装是必要才封装不然是不会去封装的。 文章原文
http://www.sczhlp.com/news/197970/

相关文章:

  • 如何做输入密码进入网站做平面设计的网站有哪些
  • 做电脑端网站手机端能搜到吗电商网站开发平台
  • 长沙的互联网网站公司哪家好网站推广策划评估指标有哪些
  • 青岛商城网站开发海口网站建设
  • 冠县网站建设建设一个网站需要哪些
  • 邯郸老区建设网站网站排名怎么提升
  • 哪些网站容易做seo优化网站设计报价是多少钱
  • 太原网站建设哪家便宜网站开发挣钱吗
  • 网站建设公司福州什么叫静态网站
  • 南昌网站外包wordpress调取全部图片缩略图
  • 婚庆网站论文外贸国际站有哪些平台
  • 用jsp做一网站的流程在线舆情系统
  • nodejs的网站开发怎么申请公司邮箱账号
  • iOS框架内存中占用很高的ttc文件是否正常
  • 【面试题】人工智能工程师高频面试题汇总:循环神经网络篇(题目+答案)
  • 做了个手机上的“视频播放器”,获益匪浅
  • CEF关闭流程
  • 网站建设技术网动画制作公司排名
  • 马鞍山网站建设cnfg中文com域名注册
  • 昆明网站推广优化邦拓网站建设
  • 如何自己做留言板网站微信网站的建立
  • 竞价单页网站制作东莞建设小学网站
  • 网站设计简单网页做的好的农产品网站
  • 青岛网站定制开发太原吧
  • 徐州网站设计价位汽贸做网站有用处吗
  • 建网站代码三星网上商城下载
  • 视频弹幕网站建设网页设计图片居中对齐的代码
  • 有什么做家纺的网站修改wordpress插件
  • 沈阳网站seo优化哪家好杭州网红打卡地
  • 免费网站推广网站不用下载网站建设实训总结2000字