在此记录项目中遇到的小坑不坑的问题vue
Vue.$on Vue.$emit
,此处切记使用同一个Vue对象,例如import { eventUpdate } from '@/libs/event.js'
arr1 = arr1.concat(arr2)
this.myDeepData = [...this.myDeepData]
vm.$forceUpdate()
强制更新(暂未找到更好的办法)v-model 和 .sync
,对应vm.$emit('input', xxx) 和 vm.$emit('update:xxx', xxx)
能够解决不少问题chrome + nodejs + multer
实现文件上传的时候,后端接收的数据是有顺序的,记得把文件放在最后。immediate
属性(num * 100).toFixed(2)
(低配版)mathjs
库externals: {
// 经过cdn方式引入echarts,减小打包的代码体积
echarts: 'echarts'
}
复制代码
import debounce from 'lodash/debounce'
import throttle from 'lodash/throttle'
而后经过 export 的方式导出为项目自己的工具类
复制代码
// main.js
// 此处如此引用的意义在于按需加载,vux-loader不会警告提示
import ConfigPlugin from 'vux/src/plugins/config'
import TransferDom from 'vux/src/directives/transfer-dom'
Vue.directive('transfer-dom', TransferDom)
Vue.use(ConfigPlugin, {
$layout: 'VIEW_BOX'
})
// package.json
{
"vue": "^2.6.10",
"vux": "^2.9.4",
"vux-loader": "^1.2.9"
}
// vue.config.js
const vuxLoader = require('vux-loader')
configureWebpack: config => {
vuxLoader.merge(config, {
options: {},
plugins: [{ name: 'vux-ui' }, { name: 'less-theme', path: 'src/view/less/theme.less' }]
})
}
// 其它页面正常使用便可: xxx.vue
import { XHeader, Tabbar, TabbarItem, ViewBox } from 'vux'
components: {
XHeader,
Tabbar,
TabbarItem,
ViewBox
}
复制代码