今天想用swiper做一个banner,但是我导入之后就爆了这个错,代码如下:
npm:
npm install swiper --save
vue:
<template>
<div class="slide">
slide
</div>
</template>
<script>
require('swiper')
</script>
结果:
ReferenceError: window is not defined
at __vue_ssr_bundle__:10787:22
at __vue_ssr_bundle__:10789:11
at Object.<anonymous> (__vue_ssr_bundle__:11626:3)
at __webpack_require__ (__vue_ssr_bundle__:21:30)
at Object.module.exports.Object.defineProperty.value (__vue_ssr_bundle__:2668:1)
at __webpack_require__ (__vue_ssr_bundle__:21:30)
at Object.module.exports.__vue_styles__ (__vue_ssr_bundle__:4463:19)
at __webpack_require__ (__vue_ssr_bundle__:21:30)
at Object.<anonymous> (__vue_ssr_bundle__:3618:79)
at __webpack_require__ (__vue_ssr_bundle__:21:30)
想问下大家有没有碰过这个问题,怎么解决的?
官网上跟vue有关的swiper好像都会有这个问题,只要涉及window和document。。
猜测应该是使用了服务器渲染的原因,建议可以从这个角度进行排查