【问题标题】:Vue cli problem with routing and getting filesVue cli路由和获取文件的问题
【发布时间】:2020-05-09 16:07:16
【问题描述】:

我使用 VUE CLI 发布了一个项目。

当我构建我的项目时,它没有工作,我知道问题

/js/* 中的 Javascript 文件不起作用,因为它们使用 vue 它自己进行路由,而不是上传 javascript 文件,服务器返回 html 文件,我在控制台中有错误:

Uncaught SyntaxError: Unexpected token '

我找到了将所有资源(js、css、字体)放在外部目录中并编辑 index.html 的解决方案

问题如何在 vue cli 中解决这个问题?

示例:我没有在 mywebsite/js/app.a5fe57de.js 中获取脚本,而是在此 url 中获取页面 html。

非常感谢您的帮助。

【问题讨论】:

  • 好像有点不清楚,能告诉进程重现吗?
  • @SwapnilSoni,我举个例子。

标签: vue-router vue-cli


【解决方案1】:

问题来自.htaccess 文件(我在后端使用 php)给定here

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>

为了解决这个问题我们应该将所有资产(javascripts/imgs/css ...)放在一个目录中,并关闭该文件夹中的Rewrite mod

1.使用配置创建文件vue.config.js

module.exports = {
    publicPath: "/",
    outputDir: "dist/",
    assetsDir: "public/assets/"
}

2. 通过命令npm run build构建项目后,我们的资产(javascripts/img/css ....)在目录public,然后我们把这个.htaccess 里面的文件:

RewriteEngine Off

并且构建项目会正常工作!

【讨论】:

    猜你喜欢
    • 2015-12-23
    • 2017-11-26
    • 1970-01-01
    • 2020-09-09
    • 2019-01-06
    • 2019-12-05
    • 2021-06-09
    • 2017-01-31
    • 2016-07-07
    相关资源
    最近更新 更多