npm - 为 Vue JS 项目构建 dist 文件夹

标签 npm webpack vue.js vuejs2

我正在尝试为不同的环境(sit、uat、生产)创建分发文件夹。为此,我开始在我的 Vue js 项目中使用 .env 文件。我正在做 yarn 坐或npm运行坐。我的问题。 Linux 盒子中的文件夹未正确创建。但在我的windows机器上它工作正常。 在我的 package.json 中,我有针对不同环境的不同脚本。

"sit": "vue-cli-service --mode sit build",

在我的 Windows 计算机中,这就是 dist 文件夹的创建方式。 winddows machine dist folder

linux box dist folder

我不确定是什么问题。在我的开发环境中,我有 "@vue/cli-service": "^3.0.0-beta.15"

最佳答案

当您使用 vue-cli-service 构建时,您的 mode 确实会触发,包括您设置的相应 .env 文件。但是,无论您拥有多少环境,vue-cli-service 默认情况下仅构建两种不同类型的发行版,具体取决于 --mode 开关:

  1. 生产,这是默认的模式(或者您可以使用--mode production指定它;或者
  2. 非生产,在您的情况下,是 --mode sat--mode uat

默认情况下,当您为生产构建时,您的应用程序将被捆绑在一起,并且根据您的设置,您将获得js目录、css等。对于您指定的任何其他模式,它会构建一个没有捆绑应用程序的非生产发行版,因此您将看不到js文件夹。这是默认情况。

现在,就您的情况而言,您所说的是,根据操作系统的不同,其执行情况也有所不同。我不知道您的具体设置,但是您要么两台机器上的环境存在差异,正在运行不同的命令,要么 vue-cli-service 中存在缺陷,您可能需要提出该缺陷的一个问题。双重/三次检查您的环境和正在运行的命令。

顺便说一句,如果您尝试针对不同的环境进行构建,您可能需要将 dest 开关添加到构建命令中,以便可以构建到不同的目录 - 类似于:

"sit": "vue-cli-service build --mode sit --dest ./dist/sit",
"uat": "vue-cli-service build --mode uat --dest ./dist/uat",
"production": "vue-cli-service build --mode production --dest ./dist/production"

关于npm - 为 Vue JS 项目构建 dist 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51938234/

相关文章:

javascript - 动态加载 React 组件

javascript - 从 Vue.js 中的 API 获取 HTML

javascript - Vue.js 如何在路由器 View 组件之间发出事件

node.js - Webpack-dev-server 提供目录列表而不是应用程序页面

reactjs - node-sass@4.11.0 安装后脚本失败。无法运行这个

javascript - 为了使我的代码正常工作,我必须更改 Cheerio 的一些核心功能,如何将其保留在我的模块中?

node.js - 无法使用或卸载 Node.js

javascript - 使用 TerserWebpackPlugin 将 sourceMap bundle.js.map 文件存储在特定位置

routes - 我在 vuejs 单页应用程序上刷新页面

docker - 如何修复 Google Cloud Build 中的 "npm ERR! Maximum call stack size exceeded"?