【问题标题】:Can't get a proper link using Laravel and Vue无法使用 Laravel 和 Vue 获得正确的链接
【发布时间】:2018-03-03 11:18:38
【问题描述】:

好吧,我这几天遇到了这个问题。我的问题是: 在我的 .vue 页面中,我创建了以下链接来下载一个简单的 PDF 文件:

<a href= {{ asset('download/form.pdf') }}> Download here. </a>

(链接正常显示。)

刀片:

@extends('layouts.esic')   
@section('content')
<solicitante></solicitante>
@endsection

但是当我点击此处下载时,我得到了一个错误提示:

Sorry, the page you are looking for could not be found.

我的意思是。该文件放置在公用文件夹中,代码似乎还可以。我错过了什么吗?

干杯!

【问题讨论】:

标签: javascript php laravel vue.js


【解决方案1】:

要使其可从网络访问,您需要创建一个从 public/storage/downlaod 到 storage/app/public/download 的符号链接

ln -s /home/vagrant/Code/laravel-project-name/storage/app/public/download /home/vagrant/Code/laravel-project-name/public/storage/download

【讨论】:

【解决方案2】:

如果您的下载文件夹位于公共文件夹中,您可以支持导入您的特定文件。

laravel 刀片

 @extends('layouts.esic')   
    @section('content')
    <solicitante :pdf ="{{ json_encode(asset('download/form.pdf')) }}"></solicitante>
    @endsection

组件vue。 (类似这样的)

<template>
<a href= {{ pdf }}> Download here. </a>
</template>

<script>
export default {
 props: ['pdf'],

 ..............

我不确定您是否正在寻找这种方式, (分享一些想法:)

【讨论】:

  • 存储文件夹呢?我认为 laravel 是一个强大的框架,但有时它会让人头疼……
  • 我更新了我的答案。我不知道您是否正在寻找这种方式。
  • 您需要在存储文件夹和公用文件夹之间建立符号链接,如此处所述laravel.com/docs/5.5/filesystem
  • 关于这部分:
  • 我不能只创建一个指向确切路径的链接吗?类似于
【解决方案3】:

如果你只想在 vue 中插入一个链接,试试这个

<a v-bind:href="url">{{ url }}</a>

export default {
  data() {
    return  { url: 'http://anywhere.com'  };
  }
}

希望有帮助:)

【讨论】:

  • 我可以创建一个指向确切路径的链接吗?类似 yoursite.com.br/public_html/file.pdf?
  • 我应该在哪里插入这个?对不起,我是初学者:
  • 你可以直接在你的vue文件中插入这个,
猜你喜欢
相关资源
最近更新 更多
热门标签