printDialog.vue 1.44 KB
<template>
  <el-dialog
    title="打印"
    :visible.sync="visible"
    :showPrint="show"
    width="500px"
    append-to-body
    @close="$emit('update:showPrint', false)"
  >
    <el-button
      size="mini"
      type="primary"
      icon="el-icon-printer"
      @click="print"
      v-print="'#print'"
      class="pull-right"
    >打印
    </el-button>

    <div id="print">
      <table v-for="item in tableData">
        <tr>
          <th>
            物料编码
          </th>
          <th>
            {{item.code}}
          </th>
        </tr>
        <tr>
          <th>
            物料类别
          </th>
          <th>
            {{item.type}}
          </th>
          <th rowspan="3">
            <el-image>

            </el-image>
          </th>
        </tr>
        <tr>
          <th>
            物料名称
          </th>
          <th>
            {{item.type}}
          </th>
        </tr>
        <tr>
          <th>
            物料规格
          </th>
          <th>
            {{item.spec}}
          </th>
        </tr>
      </table>
    </div>
  </el-dialog>
</template>

<script>
  export default {
    name: 'printDialog',
    props: {
      tableData: [],
      show:{
        type:Boolean,
        defaults:false
      }
    },
    watch:{
      show(){
        this.visible = this.show()
      }
    },
    data(){
      return{
        visible: this.show
      }
    }
  }
</script>

<style scoped>

</style>