Vite 2,今日头条前端社招面试

作者:清风皓月

zhuanlan.zhihu.com/p/351888882

用了vue3大半年了,一直都是用vue cli 基于webpack来搭建的项目,刚好有个移动端的项目,我想用vite版本的vue3来做,这里记录一下项目搭建的过程。

一.涉及技术点

  • vite版本

  • vue3

  • ts

  • 集成路由

  • 集成vuex

  • 集成axios

  • 配置Vant3

  • 移动端适配

  • 请求代理

二.步骤

vite+ts+vue3只需要一行命令

npm init @vitejs/app my-vue-app --template vue-ts

配置路由

npm install vue-router@4 --save

在src下新建router目录,新建index.ts文件

import { createRouter, createWebHashHistory, RouteRecordRaw } from “vue-router”;

const routes: Array = [

{

path: “/”,

name: “Home”,

meta: {

title: “首页”,

keepAlive: true

},

component: () => import(“…/views/Home/index.vue”),

},

{

path: “/login”,

name: “Login”,

meta: {

title: “登录”,

keepAlive: true

},

component: () => import(“…/views/Login/index.vue”),

},

];

const router = createRouter({

history: createWebHashHistory(),

routes

});

export default router;

在main.ts挂载路由

import { createApp } from ‘vue’

import App from ‘./App.vue’

import router from “./router”;createApp(App)

.use(router)

.mount(‘#app’)

配置数据中心vuex(4.x)

安装

npm i vuex@next --save

配置

在src下创建store目录,并在store下创建index.ts

import { createStore } from “vuex”;

export default createStore({

state: {

listData:{1:10},

num:10

},

mutations: {

setData(state,value){

state.listData=value

},

addNum(state){

state.num=state.num+10

}

},

actions: {

setData(context,value){

context.commit(‘setData’,value)

},

},

modules: {}

});

挂载

在main.ts挂载数据中心

import { createApp } from ‘vue’

import App from ‘./App.vue’

import router from “./router”;

import store from “./store”;

createApp(App)

.use(router)

.use(store)

.mount(‘#app’)

Vant3

安装

npm i vant@next -S

vite版本不需要配置组件的按需加载,因为Vant 3.0 内部所有模块都是基于 ESM 编写的,天然具备按需引入的能力,但是样式必须全部引入137.2k

在main.ts全局引入样式

import { createApp } from ‘vue’

import App from ‘./App.vue’

import router from “./router”;

import store from “./store”;

import ‘vant/lib/index.css’; // 全局引入样式

createApp(App)

.use(router)

.use(store)

.use(ant)

.mount(‘#app’)

移动端适配

安装postcss-pxtorem

npm install postcss-pxtorem -D

在根目录下创建postcss.config.js

module.exports = {

“plugins”: {

“postcss-pxtorem”: {

rootValue: 37.5,

// Vant 官方根字体大小是 37.5

propList: [‘*’],

selectorBlackList: [‘.norem’]

// 过滤掉.norem-开头的class,不进行rem转换

}

}

}

在根目录src中新建util目录下新建rem.ts等比适配文件

// rem等比适配配置文件

// 基准大小

const baseSize = 37.5

// 注意此值要与 postcss.config.js 文件中的 rootValue保持一致

// 设置 rem 函数

function setRem () {

// 当前页面宽度相对于 375宽的缩放比例,可根据自己需要修改,一般设计稿都是宽750(图方便可以拿到设计图后改过来)。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
img

打开全栈工匠技能包-1小时轻松掌握SSR

两小时精通jq+bs插件开发

生产环境下如歌部署Node.js

网易内部VUE自定义插件库NPM集成

谁说前端不用懂安全,XSS跨站脚本的危害

webpack的loader到底是什么样的?两小时带你写一个自己loader

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

aWM0LnpoaW1nLmNvbS84MC92Mi0yNDAwODRhMGFlNzQwNmUzMWI4NjM0NTk3ZTFjOWQwN19oZC5qcGc?x-oss-process=image/format,png)

webpack的loader到底是什么样的?两小时带你写一个自己loader

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-H1YbEQbD-1712770682978)]

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值