我正在做一个更大的项目,需要在 some 页面上为移动用户创建一个单独的UX。将响应式布局与CSS配合使用不会削减效果,而使用test.spec.js
进行动态组件渲染会导致令人恐惧的模板。
This answer是我最接近的,但是我想避免手动定义路由,因为有很多页面。
我目前正在使用中间件基于用户代理检查进行重定向:
v-if
但是我无法判断是否有移动版本,因此如果没有,将显示错误页面。
我也尝试使用this answer,但使用nuxt-device-detect而不是断点,但是由于路由器是在进入浏览器之前进行配置的,所以check函数将返回fallback选项,因此它没有为我工作。另外,由于我将使用SSR,因此避免了诸如export default function(context) {
if (context.isMobile) {
if (context.route.fullPath.indexOf('/m') !== 0) {
return context.redirect('/m' + context.route.fullPath)
}
}
if (context.isDesktop) {
if (context.route.fullPath.indexOf('/m') === 0) {
return context.redirect(context.route.fullPath.substring(2))
}
}
}
之类的事情。
简而言之,我的问题是:为移动用户提供单独页面的最佳实践是什么?