我在名为DetermineTree()
的函数库中有一个函数Explorer.vbs
,在DetermineTree()
中有一个同名Datasheets.vbs
的函数。从我的Action我调用的函数最终会调用DetermineTree()
。我想指定我要从DetermineTree()
拨打Explorer.vbs
而不是Datasheets.vbs
var AWS = require('aws-sdk');
AWS.config.region = "us-east-1";
var s3 = new AWS.S3({signatureVersion: 'v4'});
var BUCKET_NAME = 'my-bucket-name'
exports.handler = (event, context, callback) => {
var params = {Bucket: BUCKET_NAME, Key: event.path};
s3.getSignedUrl('putObject', params, function (err, url) {
console.log('The URL is', url);
callback(null, url);
});
};
我意识到,如果我更改了库的关联顺序,它将解决问题,但我正在寻找这个问题的代码修复。
在C#中的我认为您可以使用点符号指定,例如。 Explorer.DetermineTree()
答案 0 :(得分:3)
我假设你没有选择更改你的函数库来为这些函数提供唯一的名称(这将是最干净的解决方案)。
VBScript中的AFAIK功能不会"记住" 它来自哪个脚本文件,所以没有办法消除这些功能的歧义而不改变它们文件。评估的最新文件将覆盖以前具有相同名称的函数。
针对您的问题的一个hacky解决方案可以是在调用函数之前使用LoadFunctionLibrary
,以确保正确的函数库最终决定使用哪个函数。
答案 1 :(得分:0)
您可以进一步阅读以了解首先调用哪个函数(订单) - Why only the latest function is called, if the function name are same in UFT 12.02?