HarmonyOS 鸿蒙Next 开发JS中怎么实现两个函数之间的值传递?

HarmonyOS 鸿蒙Next 开发JS中怎么实现两个函数之间的值传递?

代码如下,我想实现identify函数里能使用result的值,该怎么写?

takePhoto(e){
    var camera_take = this;
    var camera = this.$element('camera');
    camera.takePhoto({
        quality:'high',
        success(result){
            console.info('##-------------拍照成功回调------' + result)
            camera_take.src = result.uri
            console.log("##拍照成功路径==>>" + camera_take.src);
        },
        fail(result){
            console.info('##-------------拍照失败回调------' + result)
        },
        complete(result){
            console.info('##-------------拍照结束回调------' + result)
        }
    })
},
identify(){
    prompt.showToast({
        message:"执行文件上传"
    })
    let photo = {
        filename: "test",
        name: "test",
        //uri: "internal://cache/test.jpg",
        uri: "common/images/bg-tv.jpg",
        type: "jpg"
    };
    //let data = { name: "name123", value: "123" };
    //let header = { key1: "value1", key2: "value2" };
    let uploadTask;
    request.upload({
        url: 'http://43.138.48.60:8889/login/',
        //header: header,
        method: "POST",
        files: [photo],
        //data: [data]
    })
    .then((data) => {
        uploadTask = data;
    }).catch((err) => {
        console.error('Failed to request the upload. Cause: ' + JSON.stringify(err));
    })
}

更多关于HarmonyOS 鸿蒙Next 开发JS中怎么实现两个函数之间的值传递?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

开发者您好,可以定义一个全局变量接受result值,文件上传与下载可参考以下链接:

https://gitee.com/openharmony/app_samples/tree/master/Network/UploadDownload。

相机使用可参考以下链接:
https://gitee.com/openharmony/app_samples/tree/master/media/Scan。

更多关于HarmonyOS 鸿蒙Next 开发JS中怎么实现两个函数之间的值传递?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next开发中,若你在使用JavaScript(JS)进行编程,并希望实现两个函数之间的值传递,可以通过多种方式来完成。以下是一个基本的方法:

在JavaScript中,函数之间的值传递通常通过参数传递、全局变量或闭包等方式实现。对于函数间的直接值传递,最常见的是通过函数的参数列表。

假设有两个函数functionAfunctionB,你想在functionA中计算一个值,并在functionB中使用这个值。你可以这样做:

function functionA() {
    let value = 42; // 计算或定义的值
    functionB(value); // 将值传递给functionB
}

function functionB(passedValue) {
    console.log(passedValue); // 使用传递过来的值
    // 在这里可以对passedValue进行进一步处理
}

// 调用functionA来触发值传递
functionA();

在这个例子中,functionA定义了一个局部变量value,并通过调用functionB时将其作为参数传递。functionB接收这个参数passedValue,并在其函数体内使用。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部