Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 访问网页包配置文件中的浏览器窗口对象_Javascript_Webpack_Babeljs_Webpack Dev Server - Fatal编程技术网

Javascript 访问网页包配置文件中的浏览器窗口对象

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(窗口)返回未定义。如何访问此对

我有一个webpack项目,我使用webpack dev server来使用它。我希望能够在
窗口中设置一些设置。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",
  },
  ...
}