工作流审批退回,撤销API

审批退回API

mutation {
  workflowUserTaskMutation {
    approveRejust(
      workflowUserTask: {id: 701530152718787758, userTaskViewName: "工作流任务待办xml_workflow", userTaskReadonlyViewName: "工作流任务待办detail_workflow", source: "超级管理员", statusDisplayName: "待处理", avatarUrl: "https://pamirs.oss-cn-hangzhou.aliyuncs.com/oinone/img/workflow/default.png", name: "测试流程", instanceId: 701530152718787737, taskId: 701530152718787756, definitionId: 701530152718787698, definitionVersion: 34, canAddSignApproval: false, content: null, nodeId: "APPROVAL0000000000014502", userType: USER_TYPE_USER, userId: 10001, model: "top.Teacher", nodeContext: "{\"id\":\"700755598316612629\",\"teacherName\":\"1234312\",\"readStatus\":\"NO_READ\",\"pamirsUser\":[]}", taskType: APPROVE, viewId: 701530152718787696, viewReadonlyId: 701530152718787697, taskCreateDate: "2025-01-22 14:31:12", flowCreateDate: "2025-01-22 14:30:50", allowTransfer: false, allowAddSign: false, allowFallback: true, allowStaging: true, allowAgree: true, allowReject: true, readConfirm: false, mustReason: false, isUrge: false, status: ACTIVE, filterAddSign: "id>=0 ", filterTransfer: "id>=0 ", hasFallback: true, workflowBackNode: {id: 701530152718787702, fallBackNodeName: "填写"}, filterFallBackNodeIds: "'WRITE0000000000014501'"}
    ) {
      id
      addSignUserId
      transferUserId
      workflowBackNodeId
      enableCustomView
      isCopy
      isRecall
      isClose
      isFallBack
      operateType
      workflowModule {
        id
        logo
        bitOptions
        attributes
        displayName
        sys
        name
        systemSource
        module
        sign
        abbr
        hash
        dsKey
        summary
        description
        state
        boot
        application
        latestVersion
        platformVersion
        publishedVersion
        publishCount
        defaultCategory
        category
        moduleDependencies
        moduleExclusions
        moduleUpstreams
        excludeHooks
        priority
        website
        author
        demo
        web
        license
        toBuy
        maintainer
        contributors
        url
        selfBuilt
        metaSource
        clientTypes
        show
        defaultHomePageModel
        homePageModel
        defaultHomePageName
        homePageName
        defaultLogo
        createDate
        writeDate
        createUid
        writeUid
      }
      module
      userTaskViewName
      userTaskReadonlyViewName
      source
      fromDepartment
      fromCorpName
      fromCorpLogo
      fromCorpId
      workflowVersion
      statusDisplayName
      helpDisplayName
      avatarUrl
      name
      title
      workflowUserInstanceId
      instanceId
      instance {
        id
        name
        title
        bizType
        source
        fromDepartment
        fromCorpName
        fromCorpLogo
        fromCorpId
        workflowVersion
        module
        version
        definitionCode
        workflowDCode
        currentNodeName
        triggerType
        status
        startDate
        endDate
        instanceCostTime
        context
        originNodeContext
        runtimeDefinition
        model
        errorMessage
        notifyErrorMessage
        parentTaskInstanceId
        masterInstanceId
        parentInstanceId
        isAsync
        initiatorUid
        currentNodeTag
        currentNodeId
        isUrge
        canUrge
        lastUrgeTime
        taskType
        hasApproval
        hasWrite
        taskPassedStatus
        tmpTaskType
        tmpTaskPassedStatus
        canRecall
        nodeContextSummary
        instanceStatusDisplayName
        dataBizId
        hasSaved
        createDate
        writeDate
        createUid
        writeUid
      }
      taskId
      taskInstance {
        id
        endFunId
        workflowName
        module
        workflowInstanceId
        nodeId
        nodeTag
        nodeName
        nodeDisplayName
        nodeDataId
        nodeDataIsCreateData
        nodeDesc
        autoPass
        isCurrent
        isHistory
        version
        orderNumber
        startDate
        finishDate
        taskCostTime
        status
        lastTaskInstanceId
        lastNodeId
        lastStatus
        hasFallback
        fallBackNodeId
        fallBackTaskInstanceId
        belongBranchIndex
        belongBranchNodeId
        deph
        errorMessage
        nodeContext
        model
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        dataSaveType
        hasSaved
        result
        missData
        locked
        branchCount
        passedBranchs
        postTime
        isDeadlineOperate
        lastUrgeTime
        canUrge
        isUrge
        isRecall
        belongLoopNodeId
        loopCurrent
        loopEnd
        isLoop
        enableEndFun
        isClose
        createDate
        writeDate
        createUid
        writeUid
      }
      definitionId
      definitionVersion
      canAddSignApproval
      flowDesc
      content
      nodeId
      nodeName
      nodeDesc
      userType
      userId
      employeeId
      roleId
      deptId
      nodePersonUser {
        userId
        userName
        avatarUrl
        status
        result
        remark
        pics
        addSignRemark
        addSignPics
      }
      model
      modelName
      nodeDataBizId
      nodeDataBizIds
      originNodeContext
      nodeContext
      nodeContextSummary
      taskType
      taskPassedStatus
      viewId
      viewReadonlyId
      taskCreateDate
      taskFinishDate
      flowCreateDate
      allowTransfer
      allowAddSign
      allowModify
      allowFallback
      allowStaging
      allowAgree
      allowReject
      allowPost
      deadlineType
      allowAutoTransfer
      allowAutoAgree
      deadline
      remindMinuteEnable
      remindMinute
      remindMinuteUnit
      deadlineStatus
      readDone
      readConfirm
      remindContent
      remindNum
      isDeadlineOperate
      mustReason
      isUrge
      logDetails {
        id
        workflowUserTaskLogId
        taskId
        orderNumber
        nodeName
        instanceId
        startDate
        finishDate
        operator
        operation
        operationName
        nodeType
        remark
        createDate
        writeDate
        createUid
        writeUid
      }
      historyTasks {
        id
        workflowUserTaskId
        nodeId
        nodeTag
        status
        createDate
        writeDate
        createUid
        writeUid
      }
      status
      result
      remark
      opRemark
      addSignUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      transferUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      autoTransferUsers {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      selectType
      transferInfo {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      addSignInfo {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      transferPerson {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      addSignPerson {
        id
        nodeId
        name
        exp
        type
        count
        model
        filed
        isMulti
      }
      isAutoTransfer
      filterAddSign
      filterTransfer
      filterAutoTransfer
      canOperate
      hasAddSign
      operation
      initiator {
        id
        code
        countryId
        avatarMediumId
        currencyId
        avatarBigId
        themeId
        signUpType
        userType
        login
        phoneCode
        phone
        email
        initialPassword
        isInitialPassword
        password
        source
        active
        name
        nickname
        realname
        avatarUrl
        langId
        timeZoneType
        contactPhone
        contactEmail
        birthday
        gender
        idCard
        regDate
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      createDate
      initiatorUid
      hasFallback
      workflowBackNode {
        id
        nodeId
        fallBackNodeId
        fallBackNodeName
        fallBackNodeLabel
        definitionId
        workflowCode
        nodeModel
        nodeModelId
        createDate
        writeDate
        createUid
        writeUid
      }
      emptyWorkflowBackNode
      filterFallBackNodeIds
      flowTreeJson
      taskTime
      isMobile
      nodeInfos {
        orderNum
        taskInstanceId
        branchOrderNum
        branchUniqueCode
        branchName
        isSelected
        isPassed
        isHistory
        hasStart
        fallbackTaskInstanceId
        taskFinishedDate
        nodeId
        nodeName
        nodeTag
        remark
        userId
        isDottedLine
        userName
        avatarUrl
        taskInstanceStatus
        statusDisplayName
        pics
        addSignRemark
        addSignPics
        canUrge
      }
      writeDate
      instanceStatusDisplayName
      fallBackNodeId
      needSendMessage
      pics
      attachments {
        id
        code
        name
        url
        type
        size
        mime
        isPublic
        resId
        resType
        createDate
        writeDate
        createUid
        writeUid
      }
      addSignRemark
      addSignPics
      addSignAttachments {
        id
        code
        name
        url
        type
        size
        mime
        isPublic
        resId
        resType
        createDate
        writeDate
        createUid
        writeUid
      }
      mainModel
      dataBizId
      createUid
      sharingUser {
        id
        code
        teacherId
        employeeType
        name
        jobNum
        dataStatus
        companyCode
        departmentCode
        departmentTreeCode
        bindingUserId
        isMaster
        userEmail
        login
        phone
        initialPassword
        bindingMode
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      writeUid
    }
  }
}

撤销API

mutation {
  workBenchWorkflowUserTaskInitiateMutation {
    recall(
      workflowUserTaskInitiate: {id: 701530152718787737, tag: TAG_PASS, initiateSelect: TOTAL, taskTypeSelect: TOTAL, name: "测试流程", workflowModule: {id: 644013028727063175, displayName: "oinone功能展示", module: "top_demo"}, source: "超级管理员", module: "top_demo", status: PROCESSING, canUrge: true, canRecall: true, createDate: "2025-01-22 14:30:50"}
    ) {
      id
      tag
      initiateSelect
      taskTypeSelect
      name
      title
      bizType
      workflowModule {
        id
        logo
        bitOptions
        attributes
        displayName
        sys
        name
        systemSource
        module
        sign
        abbr
        hash
        dsKey
        summary
        description
        state
        boot
        application
        latestVersion
        platformVersion
        publishedVersion
        publishCount
        defaultCategory
        category
        moduleDependencies
        moduleExclusions
        moduleUpstreams
        excludeHooks
        priority
        website
        author
        demo
        web
        license
        toBuy
        maintainer
        contributors
        url
        selfBuilt
        metaSource
        clientTypes
        show
        defaultHomePageModel
        homePageModel
        defaultHomePageName
        homePageName
        defaultLogo
        createDate
        writeDate
        createUid
        writeUid
      }
      source
      fromDepartment
      fromCorpName
      fromCorpLogo
      fromCorpId
      workflowVersion
      module
      version
      definition {
        id
        code
        initiatorId
        bizType
        triggerType
        module
        content
        version
        active
        workflowCode
        workflowName
        designerContent
        createDate
        writeDate
        createUid
        writeUid
      }
      definitionCode
      workflowDCode
      currentNodeName
      triggerType
      status
      startDate
      endDate
      instanceCostTime
      context
      originNodeContext
      runtimeDefinition
      workflowTaskInstances {
        id
        endFunId
        workflowName
        module
        workflowInstanceId
        nodeId
        nodeTag
        nodeName
        nodeDisplayName
        nodeDataId
        nodeDataIsCreateData
        nodeDesc
        autoPass
        isCurrent
        isHistory
        version
        orderNumber
        startDate
        finishDate
        taskCostTime
        status
        lastTaskInstanceId
        lastNodeId
        lastStatus
        hasFallback
        fallBackNodeId
        fallBackTaskInstanceId
        belongBranchIndex
        belongBranchNodeId
        deph
        errorMessage
        nodeContext
        model
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        dataSaveType
        hasSaved
        result
        missData
        locked
        branchCount
        passedBranchs
        postTime
        isDeadlineOperate
        lastUrgeTime
        canUrge
        isUrge
        isRecall
        belongLoopNodeId
        loopCurrent
        loopEnd
        isLoop
        enableEndFun
        isClose
        createDate
        writeDate
        createUid
        writeUid
      }
      modelDefinition {
        id
        labelFields
        attributes
        label
        bitOptions
        sys
        sign
        systemSource
        hash
        pk
        module
        dsModule
        moduleName
        moduleAbbr
        model
        displayName
        name
        lname
        table
        dsKey
        remark
        type
        multiTable
        multiTableTypeField
        multiTableType
        redundancy
        proxy
        isRelationship
        summary
        description
        priority
        dataManager
        ordering
        sequenceCode
        superModels
        unInheritedFields
        unInheritedFunctions
        uniques
        indexes
        logicDelete
        logicDeleteColumn
        logicDeleteValue
        logicNotDeleteValue
        optimisticLockerField
        underCamel
        capitalMode
        charset
        collate
        categoryId
        show
        createDate
        writeDate
        createUid
        writeUid
      }
      model
      aliveUserTask {
        id
        addSignUserId
        transferUserId
        workflowBackNodeId
        enableCustomView
        isCopy
        isRecall
        isClose
        isFallBack
        operateType
        module
        userTaskViewName
        userTaskReadonlyViewName
        source
        fromDepartment
        fromCorpName
        fromCorpLogo
        fromCorpId
        workflowVersion
        statusDisplayName
        helpDisplayName
        avatarUrl
        name
        title
        workflowUserInstanceId
        instanceId
        taskId
        definitionId
        definitionVersion
        canAddSignApproval
        flowDesc
        content
        nodeId
        nodeName
        nodeDesc
        userType
        userId
        employeeId
        roleId
        deptId
        model
        modelName
        nodeDataBizId
        nodeDataBizIds
        originNodeContext
        nodeContext
        nodeContextSummary
        taskType
        taskPassedStatus
        viewId
        viewReadonlyId
        taskCreateDate
        taskFinishDate
        flowCreateDate
        allowTransfer
        allowAddSign
        allowModify
        allowFallback
        allowStaging
        allowAgree
        allowReject
        allowPost
        deadlineType
        allowAutoTransfer
        allowAutoAgree
        deadline
        remindMinuteEnable
        remindMinute
        remindMinuteUnit
        deadlineStatus
        readDone
        readConfirm
        remindContent
        remindNum
        isDeadlineOperate
        mustReason
        isUrge
        status
        result
        remark
        opRemark
        selectType
        isAutoTransfer
        filterAddSign
        filterTransfer
        filterAutoTransfer
        canOperate
        hasAddSign
        operation
        createDate
        initiatorUid
        hasFallback
        emptyWorkflowBackNode
        filterFallBackNodeIds
        flowTreeJson
        taskTime
        isMobile
        writeDate
        instanceStatusDisplayName
        fallBackNodeId
        needSendMessage
        pics
        addSignRemark
        addSignPics
        mainModel
        dataBizId
        createUid
        writeUid
      }
      errorMessage
      notifyErrorMessage
      parentTaskInstanceId
      masterInstanceId
      parentInstanceId
      isAsync
      initiator {
        id
        code
        countryId
        avatarMediumId
        currencyId
        avatarBigId
        themeId
        signUpType
        userType
        login
        phoneCode
        phone
        email
        initialPassword
        isInitialPassword
        password
        source
        active
        name
        nickname
        realname
        avatarUrl
        langId
        timeZoneType
        contactPhone
        contactEmail
        birthday
        gender
        idCard
        regDate
        createDate
        createUserName
        writeDate
        writeUserName
        createUid
        writeUid
      }
      initiatorUid
      currentNodeTag
      currentNodeId
      isUrge
      canUrge
      lastUrgeTime
      taskType
      hasApproval
      hasWrite
      taskPassedStatus
      tmpTaskType
      tmpTaskPassedStatus
      canRecall
      nodeContextSummary
      instanceStatusDisplayName
      dataBizId
      hasSaved
      createDate
      writeDate
      createUid
      writeUid
    }
  }
}

Oinone社区 作者:yexiu原创文章,如若转载,请注明出处:https://doc.oinone.top/other/20354.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
yexiu的头像yexiu数式员工
上一篇 2025年1月16日 pm10:38
下一篇 2025年1月26日 am11:40

相关推荐

  • 前端自定义组件之锚点分组

    本文将讲解如何通过自定义,实现锚点组件。这个锚点组件会根据界面设计器拖入的分组,动态解析出锚点。 实现路径 整体的实现思路是界面设计器拖个容器类的组件(这里以选项卡为例),自定义这个选项卡,往选项卡里拖拽的每个分组,每个锚点的名称是分组的标题。 1. 界面设计器拖出页面 我们界面设计器拖个选项卡组件,然后在选项页里拖拽任意多个分组。完成后点击右上角九宫格,选中选项卡,填入组件 api 名称,作用是把选项卡切换成我们自定义的锚点分组组件,这里的 api 名称和自定义组件的 widget 对应。最后发布页面,并绑定菜单。 2. 组件实现 widget 组件重写了选项卡,核心函数 renderGroups,通过 DslRender.render 方法渲染界面设计器拖拽的分组。 import { BasePackWidget, DslDefinition, DslRender, SPI, Widget } from '@oinone/kunlun-dependencies'; import TabsParseGroup from './TabsParseGroup.vue'; function fetchGroupChildren(widgets?: DslDefinition[], level = 1): DslDefinition[] { if (!widgets) { return []; } const children: DslDefinition[] = []; for (const widget of widgets) { if (widget.widget === 'group') { children.push(widget); } else if (level >= 1) { fetchGroupChildren(widget.widgets, level – 1).forEach((child) => children.push(child)); } } return children; } @SPI.ClassFactory( BasePackWidget.Token({ widget: 'TabsParseGroup' }) ) export class TabsParseGroupWidget extends BasePackWidget { public initialize(props) { super.initialize(props); this.setComponent(TabsParseGroup); return this; } // 获取分组的子元素 public get groupChildren(): DslDefinition[] { return fetchGroupChildren(this.template?.widgets); } @Widget.Reactive() public get groupTitles() { return this.groupChildren.map((group) => group.title); } // 根据容器子元素渲染左侧 @Widget.Method() public renderGroups() { if (this.groupChildren && this.groupChildren.length) { return this.groupChildren.map((group) => DslRender.render(group)); } } } vue组件核心内容是用component :is属性,渲染出配置的分组组件 <template> <div class="TabsParseGroup"> <a-anchor :affix="false"> <a-anchor-link v-for="(item, index) in groupTitles" :href="`#default-group-${index}`" :title="item" /> </a-anchor> <div v-for="(item, index) in groupComponents" :id="`default-group-${index}`"> <component :is="item" /> </div> </div> </template> <script lang="ts"> import { computed, defineComponent, PropType } from 'vue'; export default…

    2025年7月8日
    18500
  • 新人引导文档

    类型 文档链接 入门参考必看 7天入门到精通 Oinone 初级学习路径 Oinone 初级学习路径 平台部署启动 无代码docker启动说明 低代码启动说明 前端环境和启动前端工程 无代码设计器启动方式 后端无代码设计器Jar包启动方法 平台部署及依赖说明 Oinone平台部署及依赖说明(v5.0) 问题排查方法 问题排查工具使用手册 前后端研发帮助文档 前端文档 后端文档 项目开发实践要点 【前端】项目开发前端知识要点地图 【后端】项目开发后端知识要点地图 版本升级说明 版本更新日志 工具包 【附件一】下载说明 许可证使用说明 pamirs-license 许可证使用常见问题 更多文档新人引导建议,可以下方评论

    2024年7月15日
    1.3K00
  • 开放应用中的ip黑白名单

    IP白名单配置 入口:集成应用>开放管理>应用>授权调整>IP白名单配置 IP白名单取请求头中的X-Forwarded-For属性的最后一个值,X-Forwarded-For以英文,分割ip地址。 X-Forwarded-For: clientIP, proxy1IP, proxy2IP, …, proxyNIP 根据 RFC 7239 标准所述,X-Forwarded-For含义如下: clientIP:最左边的 IP,表示最初发起请求的客户端 IP(即真实用户 IP)。 proxyXIP:从左往右依次为中间各级代理服务器的 IP。 最右边的 IP:表示离当前 Web 服务器最近的一层代理服务器(IP白名单拦截的此IP)。 Nginx配置示例 以Nginx为例,为确保X-Forwarded-For拿到的是真实的IP地址,需要增加配置。 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; IP黑名单配置 入口:集成应用>开放管理>应用>黑名单 取值来源:从请求头 X-Real-IP 中提取客户端 IP。 验证逻辑: 若 X-Real-IP 不存在,直接拦截并返回异常提示:未获取到真实IP地址。 检查提取的 IP 是否在阻止列表中。 相关文章 IP黑白名单实现拦截三方用户

    2025年5月15日
    25700
  • 打印支持非存储数据导出

    介绍 平台提供的默认打印功能没有支持非存储数据的导出。我们可以自定义打印导出功能,以满足业务中个性化的需求。 实现思路 重写打印任务模型,添加业务数据字段 自定义打印动作,前端将导出数据放到业务数据字段中 使用导出数据扩展点机制修改导出数据 代码示例 继承平台的打印任务模型,加上需要业务数据字段,这个字段用于传输需要打印的表单数据,但是需要自定义打印的表单往往不止一个,所以需要定义为通用的Object字段。 @Model.model(TransientPdfPrintTask.MODEL_MODEL) @Model(displayName = "传输模型Pdf打印任务") public class TransientPdfPrintTask extends PdfPrintTask { public static final String MODEL_MODEL="demo.TransientPdfPrintTask"; @Field(displayName = "业务数据") private Object businessData; } 自定义打印动作 @Model.model(TransientPdfPrintTask.MODEL_MODEL) @Component public class TransientPdfPrintTaskAction extends AbstractPdfPrintTaskAction<TransientPdfPrintTask> { @Resource private PdfFileService pdfFileService; @Action(displayName = "打印", contextType = ActionContextTypeEnum.CONTEXT_FREE, bindingType = {ViewTypeEnum.TABLE}) @Override public TransientPdfPrintTask createPrintTask(TransientPdfPrintTask data) { return super.createPrintTask(data); } @Override protected void doExport(TransientPdfPrintTask exportTask, PdfDefinitionContext context) { pdfFileService.doExportSync(exportTask, context); } @Function.Advanced(type = FunctionTypeEnum.QUERY) @Function(openLevel = FunctionOpenEnum.API) public TransientPdfPrintTask construct(TransientPdfPrintTask data) { String model = FetchUtil.fetchVariables(PdfConstants.MODEL); data.construct(); data.setModel(model); return data; } } 本篇文章只介绍同步打印,如果异步需要修改doExport方法。 编写导出的数据处理逻辑 @Ext(PdfPrintTask.class) public class PrintExportExt extends AbstractPdfExportFetchDataExtPointImpl implements PdfExportFetchDataExtPoint { // 这里使用扩展点表达式匹配需要打印的非存储模型,只有表达式为true才会走这段逻辑。 @Override @ExtPoint.Implement(expression = "context.model==\"" + ProductPricingClientTransient.MODEL_MODEL + "\"") public List<Object> fetchExportData(PdfPrintTask exportTask, PdfDefinitionContext context) { List<Object> result = new ArrayList<>(); List<Object> dataList = new ArrayList<>(); TransientPdfPrintTask transientPdfPrintTask = new TransientPdfPrintTask(); transientPdfPrintTask.set_d(exportTask.get_d()); dataList.add(transientPdfPrintTask.getBusinessData()); result.add(dataList); return result; } } 前端自定义打印按钮,将数据提交给业务数据字段,并使用同步导出打印。

    6天前
    31700
  • 前端学习路径

    准备工作 环境准备-1h安装基础环境,需要Node和PNPM如果已经安装检查对应版本,体验阶段建议版本保持一致 克隆一个空工程-0.5h全新工程 注意事项-0.5h静态资源解压,如果还没有对应的后端服务。可以使用:https://demo.oinone.top(Oinone演示环境),账号密码:admin/admin 前端基础 1.1.1了解组件-3h– 组件如何开发– 组件如何复用– 组件如何嵌套 1.1.2 更近一步-5h– 构建更复杂的工作台– 如何发起后端请求– 构建一个通用的图表组件 1.1.3 深入了解概念-5h– 通用概念、名词解释– 页面渲染原理– 组件执行原理 1.1.4业务实战-实现通用的甘特图组件-8h– 怎么与第三方结合– 如何在开源组件上接入Oinone, 并复用 1.1.5 业务实战-实现通用的画廊组件-6h–如何更近一步复用–基础学习结束 前端进阶 2.1.1代码和无代码如何结合-4h– 了解无代码如何使用和基础概念 2.1.2使用无代码搭建增删改查-8h– 了解无代码如何使用和基础概念 最后一步 当您实现玩基础和进阶的所有的效果,Oinone的整体使用您已经大致掌握了,接下来您可以找一个当前业务的场景来实现它把!

    2025年9月1日
    61800

Leave a Reply

登录后才能评论