nodejs如何根据不同的设备加载不同的前端文件

项目的前端分为移动端和pc端,然后打包后有两个文件dist1和dist2现在后端用的nodejs且移动端和pc端共用一套后端代码原来只用pc端的时候,nodejs通过以下代码指定静态文件
app.use(express.static(path.join(__dirname,'../dist')))
现在想通过nodejs判断是移动端orPC端,然后pc端指定dist1,移动端指定dist2。这个该如何实现?
更新通过以下代码可以判断是pc还是移动端,
app.all('*',(req,res,next)=>{
constTYPE=req.headers['user-agent'].toLowerCase()
//console.log(TYPE)
constIS_MOBILE=TYPE.indexOf('android')>-1||TYPE.indexOf('ios')>-1
if(IS_MOBILE){
console.log('mobile')
app.use(express.static(path.join(__dirname,'../dist2')))
}else{
console.log('pc')
app.use(express.static(path.join(__dirname,'../dist')))
}
next()
})
但是带来一个问题,就是第一次pc端访问后,用移动端访问还是pc端的前端资源。第一次移动端访问,之后用pc端访问的还是移动端的资源。是不是node的缓存问题?
有只小跳蛙
浏览 772回答 2
2回答

千万里不及你

if(!require('is-mobile')()){app.use(express.static(path.join(__dirname,'../dist1')))}else{app.use(express.static(path.join(__dirname,'../dist2')))}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript