Javascript 访问网页包配置文件中的浏览器窗口对象
我有一个webpack项目,我使用webpack dev server来使用它。我希望能够在Javascript 访问网页包配置文件中的浏览器窗口对象,javascript,webpack,babeljs,webpack-dev-server,Javascript,Webpack,Babeljs,Webpack Dev Server,我有一个webpack项目,我使用webpack dev server来使用它。我希望能够在窗口中设置一些设置。localStorage,当使用实时重新加载选项重新启动时,网页可以使用这些设置来确定如何启动。在devServer中,我希望open选项可以由驻留在localStorage中的数据动态更改 这有可能吗?该文件名为webpack.config.babel.js,使用babel/register可以在顶级使用导入 现在,配置文件开头的console.log(窗口)返回未定义。如何访问此对
窗口中设置一些设置。localStorage
,当使用实时重新加载
选项重新启动时,网页可以使用这些设置来确定如何启动。在devServer
中,我希望open
选项可以由驻留在localStorage
中的数据动态更改
这有可能吗?该文件名为webpack.config.babel.js
,使用babel/register
可以在顶级使用导入
现在,配置文件开头的console.log(窗口)
返回未定义。如何访问此对象
// webpack.config.babel.js using babel/register
import HtmlWebPackPlugin from "html-webpack-plugin";
import MiniCssExtractPlugin from "mini-css-extract-plugin";
import { tabTracker } from "./src/actions/action_helpers";
module.exports = function(env, argv) {
console.log(window);
return {
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: "babel-loader"
}
},
{
test: /\.html$/,
use: [
{
loader: "html-loader",
options: { minimize: true }
}
]
},
{
test: /\.css$/,
use: [MiniCssExtractPlugin.loader, "css-loader"]
}
]
},
devServer: {
target: "web",
open: (() => console.log(window.localStorage))(),
proxy: {
...
}
},
plugins: [
new HtmlWebPackPlugin({
template: "./src/index.html",
filename: "./index.html"
}),
new MiniCssExtractPlugin({
filename: "[name].css",
chunkFilename: "[id].css"
})
]
};
};
我从“package.json”和“webpack.config.babel.js”文件中省略了一些不相关的信息。webpack不在浏览器中运行,即使在使用webpack dev server时也是如此,因此像
window
这样的全局浏览器不可用。webpack不在浏览器中运行,即使在使用webpack dev server时也是如此,因此,像窗口
这样的全局浏览器不可用。
// package.json
{
...,
"main": "index.js",
"scripts": {
"start": "webpack-dev-server --mode development",
},
...
}