• cross-env 运行跨平台设置和使用环境变量的脚本


    1.1 cross-env是什么

    运行跨平台设置和使用环境变量的脚本

    1.2 出现原因

    当您使用 NODE_ENV=production, 来设置环境变量时,大多数 Windows 命令提示将会阻塞(报错)。(异常是Windows上的Bash,它使用本机Bash。)换言之,Windows 不支持 NODE_ENV=production 的设置方式。

    1.3 解决

    cross-env 使得您可以使用单个命令,而不必担心为平台正确设置或使用环境变量。这个迷你的包(cross-env)能够提供一个设置环境变量的 scripts,让你能够以 Unix 方式设置环境变量,然后在 Windows 上也能兼容运行。

    1.4 安装
    npm install --save-dev cross-env
    1.5 使用
    {
      "scripts": {
        "build": "cross-env NODE_ENV=production webpack --config build/webpack.config.js"
      }
    }

    NODE_ENV环境变量将由 cross-env 设置 打印 process.env.NODE_ENV === 'production'

    例如,webpack很多都有设置如下:

    // Source maps are resource heavy and can cause out of memory issue for large source files.
    const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';

    此时 该判断在打包的时候,会一直默认是需要map文件的, 其本身是有三种方式处理:

    1: 根目录下创建 .env文件,并增加一句参数

    GENERATE_SOURCEMAP=false

    2: 将改语句改为:

    // Source maps are resource heavy and can cause out of memory issue for large source files.
    // const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
     const shouldUseSourceMap = false;

    3: 就用到我们这个插件,在package.json中创建一个用于不生成sourcemap的打包命令:

     "scripts": {
        "start": "node scripts/start.js",
        "build": "node scripts/build.js",
        "build-p": "cross-env GENERATE_SOURCEMAP=false node scripts/build.js",
        "test": "node scripts/test.js"
      },
  • 相关阅读:
    基于 Laravel 完整开源项目大全
    微信分享 php jssdk
    点点客投票post抓包
    php一些 get就能提交的漏洞
    彩票网的数据接口 分析
    PHP一些实际常用的代码
    ThinkCMF常用代码
    php解压zip 待优化
    Python调用pywin32模块 发送QQ消息,打印窗口标题,切换窗口等句柄
    浅谈数列分块问题
  • 原文地址:https://www.cnblogs.com/ningxin/p/15175645.html
Copyright © 2020-2023  润新知