Skip to content

Instantly share code, notes, and snippets.

View wisetc's full-sized avatar
😉
missing

Ben wisetc

😉
missing
  • 中国·杭州
View GitHub Profile
@wisetc
wisetc / printIframe.vue
Created January 9, 2018 07:56
利用 iframe 打印 vue 组件中的指定内容
<script>
//...
printPlanTask() {
if(!document.getElementById('printIframe')) {
let printIframe = document.createElement('iframe');
printIframe.setAttribute('id', 'printIframe');
printIframe.setAttribute('style', 'display:none');
document.body.appendChild(printIframe);
}
@wisetc
wisetc / checkItemsBatch.vue
Last active December 27, 2017 14:00
Promise.all
<script>
...
methods: {
...
validateRowForm(form, error, rules) {
return new Promise((resolve, reject) => {
new schema(rules).validate(form, (errors, fields) => {
if (fields) {
for (let k in fields) {
error[k] = {
@wisetc
wisetc / router-basic.js
Created December 22, 2017 07:07
router view module configuration for vuejs project.
import * as modules from '../views/basic/index'
import { compConfig } from './utils'
export default compConfig(modules, modules.baseUrl)
@wisetc
wisetc / Detail.vue
Created December 21, 2017 06:28
stupid backend developer to develop hard-to-use api.
<template lang="pug">
tb-wrapper(title='配方工艺明细')
el-table(v-loading='loading', :data='data', border stripe)
el-table-column(label='原料', width='200px', prop='material.materialName' show-overflow-tooltip)
el-table-column(label='称料顺序', width='120px', align='center')
template(slot-scope="scope")
span(v-if="!scope.row.__editable__") {{ scope.row.weightSeq }}
m-input-number(v-else int :max="1000" v-model="scope.row.__form__.weightSeq" style="width:96%;")
el-table-column(label='投料顺序', width='120px', align='center')
template(slot-scope="scope")
@wisetc
wisetc / example.js
Created December 19, 2017 02:07
Standard front-end data model methods by transforming back-end unified api of my company. 面向表的编程。
import { XTRequest } from './configure'
const IBASIC_API_BASE_URL = 'http://192.168.2.103:5555/ibasic-api'
export const iBaseAPI = new XTRequest(IBASIC_API_BASE_URL, ['custom', 'supplier', 'warehouse']).models
const api = iBaseAPI.custom
@wisetc
wisetc / example.js
Created December 19, 2017 01:54
API service configuration of a vuejs project.
import settings from 'settings'
export const baseUrls = new ProjectSettings(settings, [
'ibasic-api', 'iqc-api'
]).baseUrls
@wisetc
wisetc / pagination-mixin.js
Last active January 8, 2018 03:39
easy pagination mixin.
export default {
data() {
return {
pagination: {
currentPage: 1,
pageSizes: [5, 10, 50, 100],
pageSize: 10,
total: null,
layout: "sizes, prev, pager, next"
},
@wisetc
wisetc / example.vue
Last active May 18, 2020 08:09
vue searcher based on element-ui.
<template>
<div>
<m-searcher :kw="kw" :fields="searchFields" :placeholders="placeholders" @search="loadData">
<el-select v-model="kw.moldsId" clearable size="small" @clear="loadData" class="search-box__input">
<el-option :key="index" v-for="(o, index) in molds"
:label="o.code" :value="o.id"/>
</el-select>
</m-searcher>
</div>
</template>
@wisetc
wisetc / vue-number-input
Created November 10, 2017 07:56
Use vuejs watch feature to force the input to input Integer only and not float is allowed.
watch: {
'form.amount'(val, oldVal) {
if (!Number.isInteger(val)) {
this.$nextTick(() => {
this.form.amount = parseInt(val, 10)
})
}
}
}
@wisetc
wisetc / basic.js
Created November 8, 2017 01:02
Forge request api object for standard backend api.
import { api } from './configure'
export const Accessory = api('accessory')
export const Supplier = api('supplier')
export const Device = api('device')
export const Dict = api('dict')