按照其他博文提到,目前在学习go中,想通过golang+lorca写一个基于chrome的exe,来实现N多自动化操作。为啥不用QT呢,别问,问就是因为我想学习新东西,哈哈。
好的,正文来了,本地的exe经常会有拖动文件路径的需求
我想通过以下的代码来实现我的拖拽需求
H5代码
这里是一个输入框
<div class="bgDiv">
<label for="project_type" style="float:left">HAHA: </label>
<input type="text" class="search-input-text dut_ll" draggable="true" value="" id="dut_log" autofocus placeholder="Google ">
</div>
实现拖拽功能的JS代码
但是发现textData是未定义的,芭比Q了
<script>
var input = document.querySelector('.dut_ll');
input.addEventListener('drop', function (event) {
console.log(event)
event.preventDefault();
var textData= event.dataTransfer.files[0].path; // get the
console.log(fileName)
var oldval = event.target.value; // get the old value in the input
var newval = oldval + textData; // add it with the value which is dragged upon
event.target.value = newval; // change the value with the new value
console.log("newval")
console.log(newval)
});
document.querySelector('[draggable="true"]').addEventListener('dragstart', function(e){
// e.dataTransfer.setData('text', e.target.innerHTML);
console.log("addEventListener")
e.dataTransfer.setData('text', "e.target.innerHTML");
});
</script>
这个问题起码卡了我两天,没办法,初学,水平太菜
google了一圈后,发现以下的答案比较靠谱
https://stackoverflow.com/questions/58880171/get-file-path-from-drop-event
所以感觉没办法,不得不接受electron这个打包chrome exe的臭毛病了,exe大一点就大一点吧,哎,菜鸟就这样,框架不支持,就只能换框架,太怂了呀