Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Vue.js is a front-end JavaScript framework, meaning it is designed to be used in the browser. While it is possible to generate and save a text file on the client-side using JavaScript and HTML5 APIs, it is generally not recommended due to security concerns. The process involves creating a Blob object with the text content, then creating a URL with URL.createObjectURL() and using the a element to simulate a download link.

Here is an example code snippet:

<template>
  <button @click="generateFile">Generate File</button>
</template>

<script>
export default {
  methods: {
    generateFile() {
      const text = "Hello, world!"; // replace with desired text content
      const blob = new Blob([text], { type: "text/plain" });
      const url = URL.createObjectURL(blob);
      const link = document.createElement("a");
      link.href = url;
      link.download = "file.txt"; // replace with desired file name
      document.body.appendChild(link);
      link.click();
      document.body.removeChild(link);
      URL.revokeObjectURL(url);
    },
  },
};
</script>

Note that this code should be used carefully as it may raise security concerns and the generated file cannot be saved directly to the user's file system without explicit user interaction. It is better to perform file generation and manipulation on the server-side.