Giter Club home page Giter Club logo

print-template-designer's Introduction

print-template-designer

print-template-designer - A vue2 component for design a page for print
一个使用Vue2的组件,用于设计打印页面模板。 A vue2 component for design a page for print print-template-designer

特性

  • ⚡ 冲冲冲

Priview | 预览

Click Here | 点击这里预览

仅个人研究学习用,并不保证可用性和健壮性

本项目为本人在学习可视化的学习探索项目,是个DEMO。写的也还不成熟,希望可以多多提建议。主要参考了文末几位dalao的项目和文章,在此基础上进行编写代码。主要是为了锻炼自己的代码能力和设计能力。

截图

image.png image.png image.png image.png

安装

npm install print-template-designer --save

main.js

import store from './store'
import PrintTemplateDesigner from 'print-template-designer'
import 'print-template-designer/lib/print-template-designer.css'
import "remixicon/fonts/remixicon.css";
import 'vxe-table/lib/style.css'
import VXETable from 'vxe-table'

Vue.use(VXETable)

Vue.use(PrintTemplateDesigner, { store })
// 需要全局设置$VXETable、$XModal用于注册渲染器等逻辑。
Vue.prototype.$VXETable = VXETable
Vue.prototype.$XModal = VXETable.modal

app.vue

<template>
  <div>
    <ptd-designer
      ref="designer"
      :pre-component-data="preComponentData"
      :pre-page-config="prePageConfig"
      :pre-data-source="preDataSource"
      :pre-data-set="preDataSet"
      :config="printTemplateConfig"
    />
    <ptd-viewer
      v-if="viewerVisible"
      :visible.sync="viewerVisible"
      :component-data="componentData"
      :page-config="pageConfig"
      :data-set="preDataSet"
      :data-source="dataSource"
      :need-toast="needToast"
      :direct-export="directExport"
      :file-name="fileName"
    />
  </div>
</template>

<script>
  export default {
    name: 'APP',
    // ......
  }
</script>

插槽

  1. roy-designer-header-slot

标题栏右侧按钮区域插槽

  1. roy-designer-toolbar-slot

设计器上方工具栏插槽

必要外部依赖库

需要安装以下依赖才可使用:

  • vue
  • vuex
  • remixicon
  • vxe-table@legacy
  • shepherd.js
  • xe-utils

API

PTD-Designer Props

名称 类型 默认值 说明
preComponentData array | boolean false 预设页面组件
prePageConfig object | boolean false 预设页面全局配置
preDataSource array | boolean false 预设数据源
preDataSet object | boolean false 预设数据集
config object {} 设计器配置,toolbarConfig: { buttons: 展示哪些按钮, showNightMode: 是否显示夜间模式切换按钮 }

PTD-Viwer Props

名称 类型 默认值 说明
visible boolean true 展示预览窗口
componentData array [] 设计器中的组件数据
pageConfig object {} 设计器中模板全局配置信息
dataSource array [] 模板数据源配置信息
dataSet object {} 数据集合,动态数据信息
fileName string '' 导出PDF文件名,如果为空则为模板名
directExport boolean false 打开窗口后直接进行渲染下载为PDF
needToast string | boolean '建议导出PDF后再打印,更精准' 导出PDF后页面提示信息,为false时不提示。否则提示传入的字符串内容

联系我

参考项目与文章

TODO

以下是待办列表,写一些接下来该项目要干的事:

  • 基本功能

  • 剔除ElementUI

  • BUG修复

  • 扩展功能(快捷键、撤销恢复等)

  • 调整部分组件的渲染逻辑

  • 重构 (同时支持Vue2和Vue3)

Statics

Alt

Star History Chart

print-template-designer's People

Contributors

royians avatar jxh-0514 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.