Vue直接读取服务器文件并显示的方法

这里我们的想法是点开页面,自动读取服务器某个文件,然后在文本框显示出来

HTML代码

<textarea id = "div1"  style="width:1650px; height:740px" readonly>
</textarea>

JS代码

这里试用了两种方法都可以

1.ajax

    mounted() { 
        document.getElementById('div1').innerHTML = '读取中...';
        $(document).ready(function(){
	        $.ajax({async: true, url:"dhcpdlog",success:function(result){
                $("#div1").html(result);
		    }});
	    });
    }

2.load

   mounted() {
    // this.getInfo()	
    document.getElementById('div1').innerHTML = '读取中...';
    $(document).ready(function(){
    $("#div1").load("/arplog");
    });
  }

然后效果如图所示

读取中

读取完毕

本来是采用load的方法,后来发现在读取文档的过程中,光标会变成白色小手,然后点击其他事件不会立即触发,直到读取完毕才会执行。于是试着采取能异步操作的ajax方法,但结果还是出现这种情况。然后看Network发现这里读取数据用的是get方法,而且数据量较大约5w行,所以该原子操作必须一次性执行完。

 

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
Vue3中,可以使用原生的JavaScript方法来读写文件。具体来说,可以使用FileReader对象来读取文件内容,使用XMLHttpRequest对象或fetch API来发送HTTP请求并将文件内容发送到服务器。 以下是一个使用FileReader对象读取文件内容的示例: ```javascript const fileInput = document.querySelector('input[type="file"]'); fileInput.addEventListener('change', (event) => { const file = event.target.files[0]; const reader = new FileReader(); reader.onload = (event) => { console.log(event.target.result); }; reader.readAsText(file); }); ``` 这个示例中,我们首先获取了一个文件输入框的引用,然后监听其change事件。当用户选择了一个文件后,我们获取该文件的引用,并创建一个FileReader对象。接着,我们将该文件的内容读取为文本,并在onload回调函数中打印出来。 如果要将文件内容发送到服务器,可以使用XMLHttpRequest对象或fetch API。以下是一个使用XMLHttpRequest对象将文件内容发送到服务器的示例: ```javascript const fileInput = document.querySelector('input[type="file"]'); const xhr = new XMLHttpRequest(); fileInput.addEventListener('change', (event) => { const file = event.target.files[0]; const formData = new FormData(); formData.append('file', file); xhr.open('POST', '/upload'); xhr.send(formData); }); ``` 在这个示例中,我们首先创建了一个XMLHttpRequest对象,并监听其readystatechange事件。当该事件被触发时,我们检查XMLHttpRequest对象的readyState属性和status属性,以确定请求是否成功。接着,我们获取用户选择的文件,并创建一个FormData对象,将该文件添加到其中。最后,我们使用XMLHttpRequest对象将FormData对象发送到服务器

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值