• vue3+ts+vant移动端H5项目搭建


    使用vue-cli搭建项目

    1.全局安装vue-cli

    npm install -g @vue/cli
    
    • 1
    • 安装完成验证
    vue -V
    
    • 1

    在这里插入图片描述

    2.使用vue ui 可视化创建项目

    2.1 vue ui

    vue ui
    
    • 1

    在这里插入图片描述

    2.2 点击创建

    在这里插入图片描述
    点击创建
    在这里插入图片描述
    在learn目录下创建项目
    在这里插入图片描述
    在这里插入图片描述
    填写创建的项目名,选择包管理器npm

    2.3 点击下一步

    选择手动,点击下一步
    在这里插入图片描述

    2.4 选择功能

    选好点击下一步
    在这里插入图片描述

    2.5 选择配置

    在这里插入图片描述
    选择了scss预处理器,格式化及eslint校验
    在这里插入图片描述
    选择创建项目
    在这里插入图片描述
    是否把本次的这些选择做预设,下次直接选择这个预设就不用一步一步选了

    看你自己

    在这里插入图片描述
    等待项目创建完成
    在这里插入图片描述

    3.打开项目

    • 点击左上角项目名,选择在编辑器打开
      在这里插入图片描述
      在这里插入图片描述

    4、安装vant,并实现按需引入

    打开终端

    npm install vant
    
    • 1

    在这里插入图片描述
    在根目录src下新建common文件夹,里面建立vantui.ts文件
    在这里插入图片描述
    vantui.ts文件内容

    import { App } from "vue";
    import { Button } from "vant";
    const Vant = {
      install: (app: App): void => {
        app.use(Button);
      },
    };
    export default Vant;
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在main.ts中引入
    在这里插入图片描述
    安装按需引入的插件

    npm i unplugin-vue-components -D
    
    • 1

    在vue.config.js中,增加代码
    在这里插入图片描述

    const { defineConfig } = require("@vue/cli-service");
    const { VantResolver } = require("unplugin-vue-components/resolvers");
    const ComponentsPlugin = require("unplugin-vue-components/webpack");
    module.exports = defineConfig({
      transpileDependencies: true,
      configureWebpack: {
        plugins: [
          ComponentsPlugin({
            resolvers: [VantResolver()],
          }),
        ],
      },
    });
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    测试 在AboutView下测试

    <template>
      <div class="btn-box">
        <van-button block type="primary">登录</van-button>
        <van-button class="register-btn" block color="#fff">注册</van-button>
      </div>
    </template>
    <style lang="scss" scoped>
    .btn-box {
      padding: 0 20px;
      box-sizing: border-box;
      .register-btn {
        color: rgb(76, 155, 240) !important;
      }
    }
    </style>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    效果:
    在这里插入图片描述

    5、移动端适配(rem)

    5.1 安装 amfe-flexible 和 postcss-pxtorem --save在这里插入图片描述

    5.2 在main.ts引入

    在这里插入图片描述

    import "amfe-flexible";
    
    • 1

    5.3 在项目根目录下新建postcss.config.js

    判断下vant组件按375设计稿尺寸走,自己的页面是750的

    module.exports = {
      plugins: {
        "postcss-pxtorem": {
          rootValue({ file }) {
            return file.indexOf("vant") !== -1 ? 37.5 : 75;
          },
          propList: ["*"],
        },
      },
    };
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    效果:
    在这里插入图片描述

    会跟随设备变化,项目大功告成,开始干活吧

  • 相关阅读:
    【算法专题突破】双指针 - 三数之和(7)
    连锁店如何通过连锁收银系统做会员营销
    计算机专业毕业设计项目推荐13-超酷炫轻食平台(Go/Java+Vue+Mysql)
    缓存失效方案
    Java新手小白入门篇 Java面向对象(九)
    Quarto Dashboards 教程 1:Overview
    汇付国际亮相第五届进博会“2022贸易数字化促进跨境电商发展论坛”
    深入理解C#中委托的使用及不同类型委托的应用示例
    【leetcode】【2022/9/6】828. 统计子串中的唯一字符
    2022年中总结关键词:裁员、年终奖、晋升、涨薪、疫情
  • 原文地址:https://blog.csdn.net/weixin_45730243/article/details/125276058