我正在尝试设置vue3与webpack和打字稿。目前,我遇到的问题是,每当我尝试运行webpack serve时,浏览器控制台内都会出现警告:
runtime-core.esm-bundler.js:3413 You are running the esm-bundler build of Vue. It is recommended to configure your bundler to explicitly replace feature flag globals with boolean literals to get proper tree-shaking in the final bundle. See http://link.vuejs.org/feature-flags for more details.但我不明白。我的webpack配置如下:
const path = require("path")
module.exports = {
mode: 'development',
entry: './src/index.ts',
devtool: 'inline-source-map',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/,
},
],
},
resolve: {
alias: {
vue: "vue/dist/vue.esm-bundler.js"
},
extensions: ['.tsx', '.ts', '.js'],
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
},
}这是tsconfig:
{
"compilerOptions": {
"outDir": "./dist/",
"noImplicitAny": true,
"module": "es6",
"target": "es5",
"allowJs": true,
"moduleResolution": "node"
}
}我想在没有此警告的情况下进行配置,然后继续支持证监会!
发布于 2021-01-03 15:46:07
从你在错误中得到的链接。
构建将在不配置这些标志的情况下工作,但是强烈建议正确配置它们,以便在最后的包中获得正确的树抖动。
这应该能解决你的问题。
const path = require("path");
const webpack = require('webpack');
module.exports = {
mode: 'development',
entry: './src/index.ts',
devtool: 'inline-source-map',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/,
},
],
},
resolve: {
alias: {
vue: "vue/dist/vue.esm-bundler.js"
},
extensions: ['.tsx', '.ts', '.js'],
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
},
plugins: [
new webpack.DefinePlugin({
"__VUE_OPTIONS_API__": true,
"__VUE_PROD_DEVTOOLS__": false,
});
],
}还值得补充的是,@vue-cli是vue项目的标准工具。
https://stackoverflow.com/questions/65551612
复制相似问题