Vue项目打包后不能正常显示页面

2023-05-16

项目场景:

通过 Vue CLI 创建的 vue 项目,编写完项目后,通过 npm run bulid 对项目进行打包,再把打包得到的内容(dist文件夹)交给后端部署到服务器上。


问题描述:

对 vue 项目打包后,发现 dist文件中的 index.html 在浏览器中打开后页面内容无法显示,部署到服务器也一样不行,而 vue 项目在本地服务器运行时,页面是正常的。

本地服务器运行的首页:
在这里插入图片描述
打包后dist文件夹中的首页:
在这里插入图片描述
没看错,是真的什么内容都没有


原因分析:

vue 项目中缺少了 vue.config.js 文件。
在这里插入图片描述
vue-cli3 之后创建的时候并不会自动创建 vue.config.js,因为这个是个可选项,所以一般都是需要修改 webpack 的时候才会自己创建一个 vue.config.js 。


解决方案:

在项目根目录手动创建一个 vue.config.js 。
一个 vue-config.js 较完整的字段属性介绍:

module.exports = {

        // 选项
    
        //  基本路径
    
        publicPath: "./",
    
        //  构建时的输出目录
    
        outputDir: "dist",
    
        //  放置静态资源的目录
    
        assetsDir: "static",
    
        //  html 的输出路径
    
        indexPath: "index.html",
    
        //文件名哈希
    
        filenameHashing: true,
    
        
    
        lintOnSave: true,
    
        //  是否使用带有浏览器内编译器的完整构建版本
    
        runtimeCompiler: false,
    
        //  babel-loader 默认会跳过 node_modules 依赖。
    
        transpileDependencies: [ /* string or regex */ ],
    
        //  是否为生产环境构建生成 source map?
    
        productionSourceMap: true,
    
        //  设置生成的 HTML 中 <link rel="stylesheet"> 和 <script> 标签的 crossorigin 属性。
    
        crossorigin: "",
    
        //  在生成的 HTML 中的 <link rel="stylesheet"> 和 <script> 标签上启用 Subresource Integrity (SRI)。
    
        integrity: false,
    
        //  调整内部的 webpack 配置
    
        configureWebpack: () => {}, //(Object | Function)
    
        chainWebpack: () => {},
    
        // 配置 webpack-dev-server 行为。
    
        devServer: {
    
            open: process.platform === 'darwin',
    
            host: '0.0.0.0',
    
            port: 8080,
    
            https: false,
    
            hotOnly: false,
    
            // 查阅 https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli/cli-service.md#配置代理
    
            proxy: {
    
                '/api': {
    
                    target: "http://app.rmsdmedia.com",
    
                    changeOrigin: true,
    
                    secure: false,
    
                    pathRewrite: {
    
                        "^/api": ""
    
                    }
    
                },
    
                '/foo': {
    
                    target: '<other_url>'
    
                }
    
            }
        }
    
    }

一般的小项目可能不需要上面这么复杂,按照需求来设置,按照上面的项目(初始化的项目),手动添加一个 vue-config.js 如下:

module.exports = {

        // 选项
    
        //  基本路径
    
        publicPath: "./",
    
        //  构建时的输出目录
    
        outputDir: "dist",
    
         //  放置静态资源的目录
    
        assetsDir: "static",
    
        //  html 的输出路径
    
        indexPath: "index.html",
    
        //文件名哈希
    
        filenameHashing: true,
    
        
    
        lintOnSave: true,
    
        //  是否使用带有浏览器内编译器的完整构建版本
    
        runtimeCompiler: false,
    
        //  babel-loader 默认会跳过 node_modules 依赖。
    
      
        // 配置 webpack-dev-server 行为。
    
        devServer: {
    
            open: process.platform === 'darwin',
    
            host: '0.0.0.0',
    
            port: 8080,
    
            https: false,
    
            hotOnly: false,
    
            // 查阅 https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli/cli-service.md#配置代理
    
            proxy: {
    
                '/api': {
    
                    target: "http://app.rmsdmedia.com", // 项目用到的域名
    
                    changeOrigin: true,
    
                    secure: false,
    
                    pathRewrite: {
    
                        "^/api": ""
    
                    }
    
                },
    
                '/foo': {
    
                    target: '<other_url>'
    
                }
    
            }
        }
    
    }

项目打包后,输出的项目即可正常显示:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue项目打包后不能正常显示页面 的相关文章

  • PDB导出导入

    检查当前目录 set linesize 100 col DIRECTORY NAME for a20 col OWNER for a10 col DIRECTORY PATH for a50 select from dba director

随机推荐

  • 麒麟安装问题

    对于本系统 需要打开 firewall cmd zone 61 public add port 61 8001 tcp permanent firewall cmd zone 61 public add port 61 8011 tcp p
  • 单实例11g升级到19c

    11g的服务器上安装19c的软件 安装完成后 xff0c 不需要关库 xff0c 修改环境变量为19c的 xff0c 执行dbua开始下述升级 11g升级到19c 执行预检查
  • 编译方式安装mysql

    转载于 xff1a 编译编译方式安装mysql编译 环境准备 环境 xff1a 硬件为4C 4G 50G 系统版本为redhat7 9 创建用户和组 创建MySQL用户和组 并且用户不能登陆 系统自带mysql软件 xff0c 安装时会自动
  • mysql 5.7登陆简单密码问题

    lucifer mysql gt update user set authentication string 61 password 39 mysql 39 where user 61 39 root 39 Query OK 1 row a
  • 5.7及以下版本mysql不能插入中文

    转载于 xff1a https blog csdn net qq 59500621 article details 122390644 5 7及以下版本mysql默认数据库使用的字符集是Latin1 我们需要为其修改字符集为 xff1a u
  • 备库failover升级

    1 centos 6 9 single06 gt centos7 9 single06std 11 2 0 4 搭建上面的dg 2 adg上打补丁psu xff1a 31537677 3 centos 7 9 上安装19c软件 xff0c
  • Data Guard高级玩法:通过闪回恢复failover备库

    转载于 xff1a Data Guard高级玩法 xff1a 通过闪回恢复failover备库 ITPUB博客 今天看到有一个网友提了一个问题 xff0c 描述很简短 测试DG时 xff0c 主库不能宕机 xff0c 如何测试failove
  • Oracle性能调查之ASH

    转载于 xff1a Oracle性能调查之ASH xff08 一 xff09 腾讯云开发者社区 腾讯云 在ORACLE性能问题调查时 xff0c 有价值的诊断情报多 xff1a STATSPACK xff0c AWR xff0c ASH x
  • 记录一次网卡问题

    问题 xff1a root 64 rac19c01 ip a 1 lo lt LOOPBACK UP LOWER UP gt mtu 65536 qdisc noqueue state UNKNOWN group default qlen
  • CRS-1705: Found 1 configured voting files but 2 voting files are required

    背景 xff1a vmware虚拟机安装两节点19c rac xff0c 执行node1 root脚本时正常 xff0c 执行node2的root脚本时报错 报错如下 xff1a CRS 2672 Attempting to start 3
  • wwid和uuid的区别

    转载于 xff1a https blog csdn net zwjzqqb article details 80321348 1 wwid 每个SCSI磁盘都有一个WWID xff0c 类似于网卡的MAC地址 xff0c 是独一无二的 可以
  • Sm2记录介绍

    SM2是国家密码管理局于2010年12月17日发布的椭圆曲线公钥密码算法 xff0c SM2采用的就是ECC 256位的一种 1 签名验签 SSWINAPI SGD UINT32 DEVAPI SKF ECCSignData SGD HDL
  • xshell之for循环

    转载于 xff1a shell while read line 与for循环的区别 冥想心灵 博客园 cnblogs com 例子 xff1a while read line 是一次性将文件信息读入并赋值给变量line xff0c whil
  • virtualbox安装虚拟增强功能

    1 分配光驱 xff0c 选择windows的光驱 2 会发现出现了CD驱动器VBoxGuestAdditions 双击进去 xff0c 发现目录如下 xff1a 3 双击执行VBoxGuestAdditions exe
  • #蓝桥杯嵌入式组#历年客观题解析

    文章目录 第八届初赛第八届决赛第九届初赛第九届决赛第十届初赛第十届决赛 第八届初赛 C D 线与功能 xff1a 两个或多个输出信号连接在一起可以实现逻辑 与 的功能 OC门 xff0c 即 集电极开路 xff0c 实际上只是一个NPN型三
  • Git在vscode中简单使用

    Git在vscode中简单使用 一 Git安装与配置 1 Git安装 xff08 官网地址 xff1a https git scm com xff09 2 Git配置 xff08 1 xff09 安装好后 xff0c 桌面右键 Git Ba
  • 小程序云开发入门

    文章目录 前言一 开通云开发二 使用云开发1 直接创建云开发项目2 修改配置文件引入云开发 三 云数据库1 介绍2 使用 四 云函数1 介绍2 使用 五 云存储1 介绍2 使用 总结 前言 一个小程序在开发时 xff0c 除了考虑界面功能逻
  • 小程序Mpx框架入门

    文章目录 简介一 Mpx的特点1 使用原因2 设计思路3 与其他框架的区别 二 安装使用1 相关命令2 项目创建演示 三 Mpx在vscode中的相关插件四 学习Mpx框架开发1 Mpx具有的功能特性2 学习的资源 总结 简介 Mpx是一款
  • 小程序云函数调用云函数

    文章目录 前言一 案例说明二 功能实现1 云函数1 xff1a getdata2 云函数2 xff1a deldata 总结 前言 小程序云开发提供了云函数 xff0c 云函数是运行在服务端的代码 xff0c 执行速度快 通常一些复杂的功能
  • Vue项目打包后不能正常显示页面

    项目场景 xff1a 通过 Vue CLI 创建的 vue 项目 xff0c 编写完项目后 xff0c 通过 npm run bulid 对项目进行打包 xff0c 再把打包得到的内容 xff08 dist文件夹 xff09 交给后端部署到