在Nuxt.js项目中,您可以使用计算属性来动态获取Bootstrap的断点
npm install bootstrap
nuxt.config.js
文件中,添加Bootstrap CSS的链接:export default {
css: [
'bootstrap/dist/css/bootstrap.min.css'
],
// ...
}
_variables.scss
文件中,如下所示:// _variables.scss
$grid-breakpoints: (
xs: 0,
sm: 576px,
md: 768px,
lg: 992px,
xl: 1200px,
xxl: 1400px
);
export default {
computed: {
bootstrapBreakpoints() {
return {
xs: 576,
sm: 768,
md: 992,
lg: 1200,
xl: 1400
};
}
}
}
v-if
指令根据屏幕宽度显示不同的内容:<template>
<div>
<p v-if="$mq === 'xs'">Extra small screen</p>
<p v-else-if="$mq === 'sm'">Small screen</p>
<p v-else-if="$mq === 'md'">Medium screen</p>
<p v-else-if="$mq === 'lg'">Large screen</p>
<p v-else-if="$mq === 'xl'">Extra large screen</p>
</div>
</template>
<script>
export default {
computed: {
bootstrapBreakpoints() {
return {
xs: 576,
sm: 768,
md: 992,
lg: 1200,
xl: 1400
};
},
$mq() {
const width = window.innerWidth;
if (width < this.bootstrapBreakpoints.sm) {
return 'xs';
} else if (width < this.bootstrapBreak基points.md) {
return 'sm';
} else if (width < this.bootstrapBreakpoints.lg) {
return 'md';
} else if (width < this.bootstrapBreakpoints.xl) {
return 'lg';
} else {
return 'xl';
}
}
}
}
</script>
这样,您就可以根据屏幕宽度动态地获取Bootstrap的断点并在组件中使用它们。
领取专属 10元无门槛券
手把手带您无忧上云