В моем main.js
я импортировал некоторые другие js файлы, которые не имеют операторов экспорта.
//main.js
import './file1' instead import styles from './file1.js'
import './file2'
//file1.js
import './styles.scss'
function showAlert(){
alert("file1")
}
//file2.js
import Vue from 'vue'
import component1 from './component1.vue'
Vue.use(component1)
function showAlert2(){
alert("file2")
}
Вот конфигурация для веб-пакета, который я использовал для babel-loader
module: {
rules: [
{
test: /\.m?js$/,
exclude: /(node_modules|bower_components)/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-env'],
}
}
}
]
}
если я использую его, как показано ниже
import a from './file1'
alert(a)
Это определение включается в выходной файл.
Версия babel
"@babel/cli": "^7.8.3",
"@babel/core": "^7.8.3",
Теперь, если я попытаюсь вызвать (или использовать его другим способом) showAlert, он не будет включен в выходные файлы. Проблема возникает только с производственной сборкой. Когда я устанавливаю конфигурацию webpack mode:development
, она отлично работает с webpack-dev-server.