IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> hc定制平台组件使用 -> 正文阅读

[JavaScript知识库]hc定制平台组件使用

1、hc组件之slot插槽的使用

需求:page-engineering组件详情页面插入自定义视频,通过getDetailCallback方法回调设置

 ?  <page-engineering
 ? ? ?  ref="pageEngineering"
 ? ? ?  @getDetailCallback="getDetailCallback"
 ? ?  >
 ? ? ?  <!-- 插槽内容 -->
 ? ? ?  <template #video>
 ? ? ? ?  <div>
 ? ? ? ? ?  <video :src="videoSrc" controls="controls"></video>
 ? ? ? ?  </div>
 ? ? ?  </template>
 ? ?  </page-engineering>
 ? ? ?
 ?  //js代码
 ?  // 详情页回调,设置视频slot
 ?  getDetailCallback(val) {
 ? ?  let videoFile = this.$refs.pageEngineering.listTransferFn(
 ? ? ?  'getDetailFormObject',//获取字段对象的方法
 ? ? ?  't_medical_prescription_apply__videoFile'//表单隐藏字段
 ? ?  )
 ? ?  if (videoFile) {//修改为slot类型
 ? ? ?  videoFile.type = 'slot'
 ? ? ?  videoFile.typeSet = { name: 'video' }
 ? ?  }
 ? ?  this.videoSrc = val.videoFile//获取字段的值
 ?  }

2、hc组件之子应用页面100%撑开并适配

min-height: calc(100vh - 120px);

3、hc组件之回调函数修改按钮现实与隐藏

pageEngineering表单通过listTransferFn桥接方法来设置。

const add_button = this.$refs.pageEngineering.listTransferFn('getBtnParams', 'add_button');
addBtn.hidden = true;

同理,按钮需要调用小表单弹窗实现也是类似的。通过listTransferFn桥接setBtnParams方法,设置回调函数event来控制v-model变量是否展示。

<hdBouncedBox name="提示" v-model="authorization" @sureClick="SureBtn">
 ?  <template #main>
 ?  确认为该药师授权吗?
 ?  </template>
</hdBouncedBox>
?
//js代码
// 授权按钮
const authorization = {
 ?  type: 'function',
 ?  typeSet: { triggerEvent: this.authorizationBtn }//绑定为函数,通过函数修改状态
};
this.$refs.pageEngineering.listTransferFn(
 ?  'setBtnParams',
 ?  'commonAuthorizationCustomButton',
 ?  { event: authorization }
);
 ? ? ?

4、hc组件之标签表单的新建与编辑

通过路由来判断标签表单是新建与编辑,init初始化时判断

init() {
 ? ?  // 初始化获取路由 参数
 ? ?  let { name, jsonstr } = this.$route.params;
 ? ?  if (!name) return;
 ? ?  let ID = name,
 ? ? ?  PARAMS = JSON.parse(decodeURIComponent(jsonstr));
 ? ?  // // 赋值
 ? ?  Object.assign(this.formSets, {
 ? ? ?  ID,
 ? ? ?  PARAMS: PARAMS
 ? ?  });
 ? ?  if (this.state == 'edit') { 
 ? ?    //to do
 ? ?  }
 ?  },

标签表单编辑时主要注意有一个取值赋值的过程,需要确定是在标签表单已经加载的情况下才能赋值,否则会赋值失败。通过columns_callback来调用赋值的方法,并且注意赋值的方法可以写成异步函数的形式。

<hd-form-engineering @columns_callback="callbackFun">
</hd-form-engineering>
?
?
callbackFun(d) {
 ?  this.titleFilter(d, this.state == 'add' ? 'add' : 'edit');
 ?  let { handleMsg } = this;
 ?  if (this.state == 'edit' && handleMsg) handleMsg.next();
}
?
// 编辑回调赋值
*handleMsg() {
    yield true;
    //赋值
    //...
    this.$refs.hdFormEngineering.changeItemValue(valObj);
}

5、hc组件之图片上传张数限制

通过$set来设置表单字段maxLength字段

this.$set(
 ? ? ? ?  this.$refs.hdFormEngineering.getFormObject(keys.licensePic).typeSet,
 ? ? ? ?  'maxLength',
 ? ? ? ?  1
 ? ? ?  );

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-29 16:13:51  更:2021-11-29 16:14:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 22:53:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码