使用webpack构建项目时错误如下解决方案

运行npm run start错误代码如下:

PS D:\phpStudy\phpstudy\WWW\jsgame> npm run start

> @ start D:\phpStudy\phpstudy\WWW\jsgame
> webpack-dev-server --inline --config webpack.dev.js --open

D:\phpStudy\phpstudy\WWW\jsgame\node_modules\webpack-cli\bin\config-yargs.js:89
                                describe: optionsSchema.definitions.output.properties.path.description,
                                                                           ^

TypeError: Cannot read property 'properties' of undefined
    at module.exports (D:\phpStudy\phpstudy\WWW\jsgame\node_modules\webpack-cli\bin\config-yargs.js:89:48)
    at Object.<anonymous> (D:\phpStudy\phpstudy\WWW\jsgame\node_modules\webpack-dev-server\bin\webpack-dev-server.js:77:40)
    at Module._compile (module.js:635:30)
    at Object.Module._extensions..js (module.js:646:10)
    at Module.load (module.js:554:32)
    at tryModuleLoad (module.js:497:12)
    at Function.Module._load (module.js:489:3)
    at Function.Module.runMain (module.js:676:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ start: `webpack-dev-server --inline --config webpack.dev.js --open`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\BIT-019\AppData\Roaming\npm-cache\_logs\2019-02-27T07_35_41_585Z-debug.log
PS D:\phpStudy\phpstudy\WWW\jsgame>

查webpack官方更新发现:
在这里插入图片描述
需要将webpack-cli升级到3.1.1版本以上。

package.json里的"webpack-cli": "^2.1.2",改成3.1.1以上即可。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当我们使用 webpack 构建项目,如果在项目使用了 `process.env.base_api`,但却报出 `undefined` 的错误,可能是由于没有正确配置环境变量或者没有将环境变量传递给 webpack。 首先,我们需要创建一个配置文件,例如 `.env`,并在其中设置环境变量 `base_api` 的值。示例配置文件内容如下: ``` base_api=http://api.example.com ``` 接下来,我们需要确保将这些环境变量传递给 webpack。打开 webpack 的配置文件(通常为 webpack.config.js 或者 webpack.prod.config.js),以 webpack 4 为例,配置文件内容如下: ```javascript const webpack = require('webpack'); const dotenv = require('dotenv'); module.exports = () => { // 加载环境变量配置文件 const env = dotenv.config().parsed; // 创建一个新的全局变量插件,将环境变量传递给 webpack const envKeys = Object.keys(env).reduce((acc, curr) => { acc[`process.env.${curr}`] = JSON.stringify(env[curr]); return acc; }, {}); return { plugins: [ new webpack.DefinePlugin(envKeys) ] // 其他的配置项 }; }; ``` 通过以上配置,我们将读取 `.env` 文件并将其作为环境变量传递给 webpack。然后,在项目使用 `process.env.base_api` 将会得到正确的值。确保在 webpack 构建过程中重新启动项目以使环境变量生效。 然而,如果我们仍然遇到 `process.env.base_api` 的值为 `undefined` 的问题,我们需要确保环境变量的名称和配置文件中的变量名称完全一致。同,我们需要注意,在配置文件中引入了 `dotenv` 和 `webpack` 这两个模块。 以上就是一个可能的解决方案。希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值