一、全局引入css样式
// 文件目录:
/src/assets/styles/reset.less
/src/assets/styles/common.less
// 引用:app.vue
<style lang="less" scoped>
@import '~@/assets/styles/reset.less';
@import '~@/assets/styles/common.less';
</style>
二、全局引入公共变量
- cssLoaders中新增lessResourceLoader函数
- 修改return中less: generateLoaders('less')改为less: lessResourceLoader()
- 将全局less文件引入resources参数中
// 文件目录
/src/assets/styles/variables.less
// 配置
目录:/build/utils.js
function lessResourceLoader(){
var loaders = [
cssLoader,
'less-loader',
{
loader: 'sass-resources-loader',
options: {
resources: [
// 配置全局公共变量
path.resolve(__dirname, '../src/assets/styles/variables.less')
]
}
}
];
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
三、全局引入公共方法(工具方法)
注意:(export default和export的区别)
方式一:对象方式统一抛出,全局统一引用,全局使用
// 目录:/src/utils/commonUtils.js
const commonUtils = {
CheckPositiveNumber:CheckPositiveNumber,
CheckPositiveDecimalTwo:CheckPositiveDecimalTwo,
CheckPhoneNumber:CheckPhoneNumber,
CheckIDCard:CheckIDCard
}
export default commonUtils
// main.js引入
import commonUtils from '@/utils/commonUtils'
Vue.prototype.$commonUtils = commonUtils
// 使用
this.$commonUtils.xxx
方式二:按函数抛出,按需引用
// 目录:/src/utils/commonUtils.js
export function CheckPositiveNumber(){
...
}
export function CheckPositiveDecimalTwo(){
...
}
// 组件中按需加载
import {CheckPositiveNumber,CheckPositiveDecimalTwo} from '@/utils/commonUtils'
四、element-ui按需引入
方法一:第三方插件,babel-plugin-component
4.1.1 安装插件
npm install babel-plugin-component -D
4.1.2 配置插件,更改.babelrc
"plugins": [
[
"component",
{
"libraryName": "element-ui",
"styleLibraryName": "theme-chalk"
}
]
]
4.1.3 src中新建elemenet文件夹、index.js,按需导入所需组件
// 导入自己需要的组件
import { Select, Option, OptionGroup, Input, Tree, Dialog, Row, Col } from 'element-ui'
const element = {
install: function (Vue) {
Vue.use(Select)
Vue.use(Option)
Vue.use(OptionGroup)
Vue.use(Input)
Vue.use(Tree)
Vue.use(Dialog)
Vue.use(Row)
Vue.use(Col)
}
}
export default element
4.1.4 main.js引用样式及按需导出的element
import 'element-ui/lib/theme-chalk/index.css'
import element from './element/index'
Vue.use(element)
注意:Vue.use() 方法的话,则该方法默认会调用 install 方法
方法二:main.js中直接引用
import 'element-ui/lib/theme-chalk/index.css'
import { Dialog, Select, Option, OptionGroup, Input, Tree, Row, Col } from 'element-ui'
Vue.use(Select)
Vue.use(Option)
Vue.use(OptionGroup)
Vue.use(Input)
Vue.use(Tree)
Vue.use(Dialog)
Vue.use(Row)
Vue.use(Col)
注意:Dialog等要使用小写或者Vue.component(Dialog)