uniapp에서 파일을 업로드하는 방법

coldplay.xixi
풀어 주다: 2023-01-13 00:44:17
원래의
9600명이 탐색했습니다.

Uniapp 업로드 파일 방법: H5 페이지 삽입, [web-view] 태그 사용, 코드는 [< /웹 보기>].

uniapp에서 파일을 업로드하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, uni-app2.5.1 버전, Dell G3 컴퓨터.

추천(무료): uni-app 개발 튜토리얼

uniapp에 파일 업로드 방법:

H5 페이지를 삽입하려면 웹뷰를 사용해야 합니다. > 태그는 다음과 같습니다: web-view标签,如下:

<web-view src="/hybrid/html/index.html" @message="handleMessage"></web-view>
로그인 후 복사

注意:

  • h5页面必须在项目目录:/hybrid/html/下面,因为这样uni-app才不会进行编译

  • @message

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <meta http-equiv="X-UA-Compatible" content="ie=edge">
            <title>上传文件</title>
            <style>
                *{
                margin: 0;
                padding: 0;
            }
            .head-btn{
                text-align: center;
                margin-top: 50px;
            }
            .file {
                position: relative;
                display: inline-block;
                background: #D0EEFF;
                border: 1px solid #99D3F5;
                border-radius: 10px;
                padding: 24px 50px;
                overflow: hidden;
                color: #1E88C7;
                text-decoration: none;
                text-indent: 0;
                line-height: 20px;
                font-size: 40px;
            }
            .file input {
                position: absolute;
                font-size: 200px;
                right: 0;
                top: 0;
                opacity: 0;
            }
            .file:hover {
                background: #AADFFD;
                border-color: #78C3F3;
                color: #004974;
                text-decoration: none;
            }
            .determine{
                color: #FFFFFF;
                background-color: #007AFF;
                display: inline-block;
                font-size: 20px;
                border-radius: 5px;
                padding: 8px 24px;
            }
            .showFileName{
                display: inline-block;
                height: 30px;
                min-width: 300px;
            }
            .btn {
                display: block;
                margin: 20px auto;
                padding: 5px;
                background-color: #007aff;
                border: 0;
                color: #ffffff;
                height: 40px;
                width: 200px;
                border-radius: 5px;
            }
            .btn1 {
                display: block;
                margin: 20px auto;
                padding: 5px;
                background-color: #007aff;
                border: 0;
                color: #ffffff;
                height: 40px;
                width: 200px;
                border-radius: 5px;
            }
            
            .btn-red {
                background-color: #dd524d;
            }
            
            .btn-yellow {
                background-color: #f0ad4e;
            }
            
            .desc {
                padding: 10px;
                color: #999999;
            }
        </style>
        </head>
        <body>
            <div>
                <form action="" method="post">
                    <a href="javascript:;">选择文件
                        <input type="file" name="uploadFile" id="uploadFile" >
                    </a>
                </form>
                <p></p>
            </div>
            <div>
                <button type="button" data-action="redirectTo">确定</button>
                <button type="button" data-action="navigateBack">取消上传</button>
            </div>
            
            <script src="./js/jQuery1_10_2.js"></script>
            <script type="text/javascript" src="https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js"></script>
            <script>
                $(".file").on("change", "input[type=&#39;file&#39;]", function() {
                    let filePath = $(this).val();
                    // console.log(filePath);
                    localStorage.setItem("fileAddress", filePath);
                    let lastname = localStorage.getItem("fileAddress");
                    if (lastname != "") {
                        $(".showFileName").html(lastname);
                    } else {
                        $(".showFileName").html("");
                    }
                });
                $(&#39;.btn&#39;).click(function(evt) {
                    var formdata = new FormData(); // 创建一个form类型的数据
                    formdata.append("files",$("#uploadFile")[0].files[0]); // 获取上传文件的数据
                    formdata.append("operate","UpLoadFile"); // 获取上传文件的数据
                    formdata.append("name","name"); // 获取上传文件的数据
                    $.ajax({
                        url: &#39;http://47.97.163.146:8080/Controler.ashx&#39;,
                        type: "POST",
                        processData: false,
                        contentType: false,
                        data:formdata,
                        success: function(data) {
                            // debugger
                            console.log("这是请求成功的");
                        },
                        error: function(err) {
                            console.log("这是请求失败的");
                        }
                    });
                    var target = evt.target;
                    if (target.tagName === &#39;BUTTON&#39;) {
                        var action = target.getAttribute(&#39;data-action&#39;);
                        if (action == &#39;redirectTo&#39;) {
                            uni.redirectTo({
                                /* url: &#39;/pages/component/index&#39;, */
                                url: &#39;/pages/index/index&#39;,
                                success:function (d) {
                                    console.log("跳转成功");
                                },
                                fail:function(e){
                                    console.log(e);
                                },
                            });
                        }
                    }
                });
                
                //取消文件上传
                $(&#39;.btn1&#39;).click(function(evt) {
                    var target = evt.target;
                    if (target.tagName === &#39;BUTTON&#39;) {
                        var action = target.getAttribute(&#39;data-action&#39;);
                        if (action == &#39;navigateBack&#39;) {
                            uni.navigateBack({
                                delta: 1
                            });
                        }
                    }
                });
                
                
            </script>
        </body>
    </html>
    로그인 후 복사
    참고:
    h5 페이지는 프로젝트 디렉토리: /hybrid/html/ 아래에 있어야 합니다. code>, <code>uni-app는 컴파일되지 않기 때문입니다


  • @message 이벤트는 h5 페이지가 애플리케이션에 데이터를 보내는 콜백

    h5 페이지 코드:

    rrreee🎜 🎜관련 무료 학습 권장 사항: 🎜프로그래밍 동영상🎜🎜🎜
  • 위 내용은 uniapp에서 파일을 업로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿