Ich habe ein Upload-System und ich versuche, eine Beispielvorlage für Benutzer bereitzustellen. Ich habe eine Vorlage lokal in einem Unterordner in Assets gespeichert, ich möchte auf diese in meiner VueJS-Komponente zugreifen und einen Link zu ihr auf der Seite anzeigen. Dies sind die applicaple Teile der Dateistruktur:So laden Sie eine lokal gespeicherte Datei in VueJS
├──app
│ └──Components
│ └──Uploader.vue
└──assets
└──files
└──Template_Upload.csv
In Uploader.vue habe ich diese Zeile:
<a v-bind:href="item.loc" download>{{item.title}}</a>
Und im Export Ich habe diese Linie
data() {
return {
item: {title: 'Upload Template', loc: require('../../assets/files/Template_Upload.csv')}
}
Diese Methode funktioniert, wenn ich ein Bild habe. Wenn Sie auf den Link klicken, wird das Bild heruntergeladen. Wenn ich jedoch eine .csv- oder .xlsx-Datei verwende, werden Fehler beim Öffnen der Seite ausgelöst. Ich habe versucht mit
import fileTemplate from "../../assets/files/FileTemplate.csv";
Wie gut, und fileTemplate als loc Eigenschaft. Das funktioniert auch, wenn ich ein Bild verwende. Aber ich kann kein Dokument einreichen. Ist das eine Einschränkung, die ich nicht überwinden kann oder gibt es eine andere Methode, die ich ausprobieren kann?
Ich habe auch in Visual Studio (mit anderen Worten, die CSPROJ-Datei), und stellen Sie die Build Action Template_Upload.csv Einstellung gesetzt ist weg auf „Inhalt“ und die kopieren Ouput Verzeichnis Einstellung ist Wählen Sie "Immer kopieren".
Dies sind die Ressourcen, die ich in erster Linie bisher verwendet haben:
Sie benötigen einen CSV-Loader. Andere Optionen schließen ein, dass Ihr Webserver dieses Verzeichnis bedient, und dann wäre "loc" nur ein typischer Link – OverCoder