Vue-cli: 测试环境打包和生成环境打包 生成的文件目录不一致。

Created on 20 Aug 2018  ·  12Comments  ·  Source: vuejs/vue-cli

Version

3.0.1

Node and OS info

node v8.11.1 yarn 1.7.0 win10

Steps to reproduce

"dev-build": "vue-cli-service build --mode development" 和
"build": "vue-cli-service build"
dev-build打包之后 js 文件在dist根目录下。(是特意这样做的嘛)

What is expected?

打包之后 测试环境和生产环境 目录结构一致

What is actually happening?

dev-build打包之后 js 文件在dist根目录下, 测试环境和生产环境 目录结构一致

All 12 comments

+1 如何让他们打包出的结构相同

开发模式打包的目的是什么?

@yyx990803 放到用于项目测试的服务器上,测试功能。

测试的话打包路径有关系么?

emmmmm... 好吧
(我理解的,测试和正式服务器上的项目代码,除了后台数据接口域名有区别,其他尽可能保持一致。)

我也觉得测试环境和正式环境拥有同样的目录和配置是有必要的,同一份代码不同环境打包出来的文件除了domain不同以外,其他的都一样,但是打包出来的目录结构却不一样,不便于排查问题。

@skillnull 作者大大和我们想的不一样~

这个问题蛮困扰的,如果NODE_ENV都配置成development但是domain配置成一个正式环境域名,一个配置成测试环境域名,打包出来的目录结构是一样的。但是这相当于两个正式环境的包,vue.config.js又对正式环境做了 lintOnSave: process.env.NODE_ENV !== 'production'这样的单独处理,如果NODE_ENV不配置成development,打包出来的目录结构又不一样,不利于线上问题排查。 @yyx990803

@skillnull 线上问题排查可以用 sourcemap

@skillnull @anihCevol 可以通过这种方式解决,https://github.com/vuejs/vue-cli/issues/985

@sodatea 部署时候,前端代码是复制到固定目录下面的,同时期望在不同环境进行相关测试。不一致的路径会导致资源加载问题(当然也可以通过修改相关脚本解决)

@skillnull @anihCevol 可以通过这种方式解决,#985

@sodatea 部署时候,前端代码是复制到固定目录下面的,同时期望在不同环境进行相关测试。不一致的路径会导致资源加载问题(当然也可以通过修改相关脚本解决)

摘抄一下: 链接中给出的方法是, 将 .env.development 中的 NODE_ENV 改成 production 就可以了

完美解决问题.

@everywan 但是这样yarn staging 后环境变量process.env.NODE_ENV会是production,而不是想要的staging。

Was this page helpful?
0 / 5 - 0 ratings

Related issues

OmgImAlexis picture OmgImAlexis  ·  3Comments

joshuajohnson814 picture joshuajohnson814  ·  3Comments

miyamoto-san picture miyamoto-san  ·  3Comments

CodeApePro picture CodeApePro  ·  3Comments

sanderswang picture sanderswang  ·  3Comments