我无法使用webpack构建某些PrimeVue UI组件。
我已经尝试了多个组件,并且所有基本组件都可以正常工作,但是一旦尝试使用需要子组件的组件,webpack就无法构建。到目前为止,我一直在使用Breadcrumb和PanelMenu组件。
错误是:
ERROR in ./node_modules/primevue/components/panelmenu/PanelMenu.vue?vue&type=script&lang=js& (./node_modules/vue-loader/lib??vue-loader-options!./node_modules/primevue/components/panelmenu/PanelMenu.vue?vue&type=script&lang=js&)
Module not found: Error: Can't resolve './PanelMenuSub' in '/my-application-directory/node_modules/primevue/components/panelmenu'
@ ./node_modules/primevue/components/panelmenu/PanelMenu.vue?vue&type=script&lang=js& (./node_modules/vue-loader/lib??vue-loader-options!./node_modules/primevue/components/panelmenu/PanelMenu.vue?vue&type=script&lang=js&) 27:0-42 86:24-36
@ ./node_modules/primevue/components/panelmenu/PanelMenu.vue?vue&type=script&lang=js&
@ ./node_modules/primevue/components/panelmenu/PanelMenu.vue
@ ./node_modules/primevue/panelmenu.js
@ ./interface/html5/vue-components/Menu.js
@ ./interface/html5/vue-components/App.js
@ ./interface/html5/vue-main.js
我的webpack配置如下:
const path = require('path');
const { VueLoaderPlugin } = require('vue-loader');
module.exports = {
mode: 'development',
entry: 'vue-main.js',
output: {
filename: 'vue-main.bundle.js',
path: path.resolve(__dirname, 'dist'),
},
module: {
rules: [
{
test: /\.vue$/,
use: 'vue-loader'
},
// the below will apply to both plain `.js` files AND `<script>` blocks in `.vue` files
// the below will apply to both plain `.css` files AND `<style>` blocks in `.vue` files
{
test: /\.css$/,
use: [
'vue-style-loader',
'css-loader'
]
}
]
},
plugins: [
new VueLoaderPlugin()
]
};
该组件的使用与文档中所述完全相同。
可能是什么原因造成的? Breadcrumb组件也发生了同样的情况,只是找不到BreadcrumbItem组件。我检查了node_modules目录,并且文件在那里。
这是webpack配置文件问题,PrimeVue错误还是用户(我)错误?
这是没有babel的完整配置吗?我会设法解决。
https://webpack.js.org/configuration/resolve/
resolve: {
alias: {
'@': res('src'),
'vue$': 'vue/dist/vue.esm.js'
},
modules: [res('node_modules')],
extensions: ['.js', '.vue', '.json']
},
resolveLoader: {
modules: [res('node_modules')]
}