基于vue-cli和vant来搭建开发环境

    技术2025-07-09  17

    基于vue-cli和vant来搭建开发环境 1.安装vue-cli 2.通过vue-cli构建项目 3.安装vant 4.vant按需引入 5.设置pxtorem(输入px,自动变为rem,这样写的时候可以完全按照设计图来写)

    步骤省略 … 用vue-cli指令来构建项目(需要先全局安装vue-cli)     vue create tea-item 1 选择需要的工具,例如vuex,vue-router等

    安装vant npm i vant -S 1 -S 和 -D的区别:

    -S是生产环境中用到的,程序运行的时候也会使用,如element,jQuery等 -D是开发环境用到的,程序运行时不需要,如webpack,gulp等打包和压缩工具

    vant按需引入 npm i babel-plugin-import -D 1 并且将babel.config. js改为

    module.exports = {   presets: [     '@vue/cli-plugin-babel/preset'   ],   // 新增的部分   plugins: [     ['import', {         libraryName: 'vant',         libraryDirectory: 'es',         style: true     }, 'vant']   ] }   接着在main.js中引用需要导入的组件就可以了

    import {Button,Icon} from 'vant' Vue.use(Button).use(Icon)   这时候要重新启动一下项目,才会生效 在Home.vue中加入<van-button type="danger">测试</van-button> 如果出现了红色的按钮,说明已经 成功引入了vant

    顺便一提,vue中引用公用css或字体有3种方法

    在public/index.html中引用,和普通的html引用css一样 在main.js中import ‘@/assets/css/main.css’(建议在这里引用) 在app.vue中引用 5.移动端的适配,使用pxtorem

    npm i postcss-pxtorem -D 1 然后在根目录建立vue.config.js文件,加入下面的代码

    module.exports = {     lintOnSave: true,     css: {         loaderOptions: {             postcss: {                 plugins: [                     require('postcss-pxtorem')({                         rootValue: 20, // 换算的基数                         // 忽略转换正则匹配项。插件会转化所有的样式的px。比如引入了三方UI,也会被转化。目前我使用 selectorBlackList字段,来过滤                         //如果个别地方不想转化px。可以简单的使用大写的 PX 或 Px 。                         selectorBlackList: ['vant'],                         propList: ['*'],                     }),                 ]             }         }     }, }

      在public/index.html中加入代码

    <script type="text/javascript"> // 设置 rem 函数 function setRem () {

        // 设计稿为375 默认字体大小为20px;所以1rem=20; 375px = 18.75rem     let htmlWidth = document.documentElement.clientWidth || document.body.clientWidth;         //得到html的Dom元素     let htmlDom = document.getElementsByTagName('html')[0];     htmlDom.style.fontSize= htmlWidth/18.75 + 'px'; } // 初始化 setRem(); // 改变窗口大小时重新设置 rem window.onresize = function () {     setRem() } </script>   这时候写px就会自动转化成rem了  

    Processed: 0.010, SQL: 9