我正在使用webpack(laravel mix版本(,并使用同位素出现错误。谁能看到我做错了什么?
找不到此依赖性:* Masonry/Masonry in ./~/isotope-layout/js/layout-modes/masonry.js
这是我的Webpack condix,我试图应用"修复",如同位素网站上所示
const webpack = require('webpack')
const path = require('path')
const config = {
resolve: {
alias: {
'masonry': 'masonry-layout',
'isotope': 'isotope-layout'
}
},
entry: './src/index.js',
output: {
path: path.resolve(__dirname, './dist'),
filename: 'vue-waypoint.js',
library: 'VueWaypoint',
libraryTarget: 'umd'
},
module: {
rules: [
{
test: /.vue$/,
loader: 'vue-loader'
},
{
test: /.js$/,
include: path.resolve(__dirname, './src'),
exclude: /node_modules/,
use: "babel-loader"
}
]
},
plugins: [
new webpack.optimize.UglifyJsPlugin(),
new webpack.LoaderOptionsPlugin({ minimize: true })
]
}
module.exports = config;
这很奇怪,看起来您尝试在代码中重命名npm npm packages masonry-layout
和 isotope-layout
,但是别名是关于文件夹和路径(https://webpack.js.s.s.s.s.org/configuration/resolve/#resolve-alias(
您可以简单地使用: require('masonry-layout')
或import Istotope from 'masonry-layout'
进行npm i masonry-layout --save
或者您可以将"砖石层"作为全局软件包:
new webpack.ProvidePlugin({masonry: 'masonry-layout'})