Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OSX Yosemite-用于自动访问枚举的JavaScript_Javascript_Macos_Applescript_Osx Yosemite Beta_Javascript Automation - Fatal编程技术网

OSX Yosemite-用于自动访问枚举的JavaScript

OSX Yosemite-用于自动访问枚举的JavaScript,javascript,macos,applescript,osx-yosemite-beta,javascript-automation,Javascript,Macos,Applescript,Osx Yosemite Beta,Javascript Automation,我开始尝试在OS X Yosemite中将我的一些应用程序描述转换为JavaScript,但我不明白如何从应用程序访问枚举。例如,Adium的状态 在AppleScript中: tell application "Adium" if status type of global status is offline then log "offline" end if end tell 在JavaScript中,我不知道如何访问“脱机”枚举: 我尝试过一些简单的事情,

我开始尝试在OS X Yosemite中将我的一些应用程序描述转换为JavaScript,但我不明白如何从应用程序访问枚举。例如,Adium的状态

在AppleScript中:

tell application "Adium"
    if status type of global status is offline then
        log "offline"
    end if
end tell
在JavaScript中,我不知道如何访问“脱机”枚举:

我尝试过一些简单的事情,比如“离线”,但没有成功。 所有这些都是错误:

Application('Adium').StatusType("offline"); // error
Application('Adium').StatusType.offline;     // undefined
Application('Adium').StatusType.make({name:"offline"}); // error

有人用过这样的东西吗

虽然我无法进行枚举比较,但我已经能够完成这项工作。在用于自动化的JavaScript中,仅调用属性将返回Apple对象的ObjectSpecifier。在这种情况下,statusType是一个“AdiumRichText”类

如果将()放在属性后面,它将调用getter方法,该方法返回一个正常工作的NSString(String)。下面是代码:

if(Application('Adium').globalStatus().statusType() == "offline") {
    console.log("offline");
}

但当需要枚举值时,仍然无法获取值。我在DEVONthink中使用
createRecordWith
时遇到了问题,其中参数
type
应该是枚举值。
if(Application('Adium').globalStatus().statusType() == "offline") {
    console.log("offline");
}