Добрый день! Есть несколько модулей, которые подключены к app.js, вот например код, который лежит внутри:
var test = "TEST";
Вот мой webpack.config
module.exports = {
entry: './src/app.js',
output: {
filename: './dist/bundle.js'
}
};
Проблема заключается в том, что когда я пытаюсь вызвать мою переменную test в консоли разработчика, то получаю ошибку:
Что-то с областью видимости, когда я подключаю app.js напрямую - все работает, в чем проблема и как исправить? Заранее большое спасибо!
У тебя test лежит в сборке не в той области видимости. Это исправить можно несколькими способами:
1.
app.js:
var test = "TEST"
Object.assign(window, {
test: test
// Этот шаблон можно использовать для того, чтобы расширить область видимости нескольких переменных, ..., хотя можно и просто написать window.test = test
})
2.
app.js:
var test = "TEST"
module.exports = {test: test}
wepback.config.js:
module.exports = {
entry: './src/app.js',
output: {
filename: './dist/bundle.js',
library: 'global' // libarary - параметр, который принимет имя перименной (глобальной), в которую будет помещено то, что будет экспортировано с точки входа (в даном примере - ./src/app.js)
}
};
Тогда к test можно с помощью периеменой global: global.test
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости