安装v-viewer后引用样式文件报错,这个样式文件不是安装完自带吗?还是说我得在webpack里做点什么?我看了node-modules里的v-viewer部分,但是我看别人也是这样安装的,node包里的内容跟我一样他就不报错,跟安装时候的node和npm版本有关系吗
报错
Error: Cannot find module 'viewerjs/dist/viewer.css'
at webpackMissingModule (index.ts:2:1)
at ./src/main.ts (index.ts:2:1)
at __webpack_require__ (bootstrap:22:1)
at startup:7:1
at __webpack_require__.
package.json
"v-viewer": "^3.0.13",
"vue": "^3.3.4",
"webpack": "^5.88.2",
"webpackbar": "^5.0.2"
main.ts
import 'viewerjs/dist/viewer.css'//加上这个就报错
import VueViewer from 'v-viewer'
const app = createApp(App)
app.use(VueViewer, {
defaultOptions: {
zIndex: 9999,
},
})
HTML
<template>
<div v-if="images">
<img
v-for="(image, i) in images"
:key="i"
:class="['preview-image', cls]"
:src="
(image + '').indexOf('https://') > -1
? image + '?x-oss-process=image/resize,p_40,w_50,h_50'
: image
"
@click="previewURL(i)"
/>
</div>
</template>
<script>
// import 'viewerjs/dist/viewer.css'
// import { api as viewerApi } from 'v-viewer'
export default {
name: 'PreviewImage',
props: {
images: {
type: Array,
default: function () {
return []
},
},
cls: {
type: String,
default: function () {
return ''
},
},
},
created() {},
methods: {
previewURL(index) {
// If you use the `app.use` full installation, you can use `this.$viewerApi` directly like this
viewerApi({
options: {
initialViewIndex: index,
},
images: this.images,
})
},
},
}
</script>
<style lang="scss" scoped>
.preview-image {
width: 100%;
height: 100%;
}
</style>