OSX Yosemite-用于自动访问枚举的JavaScript
我开始尝试在OS X Yosemite中将我的一些应用程序描述转换为JavaScript,但我不明白如何从应用程序访问枚举。例如,Adium的状态 在AppleScript中: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中,我不知道如何访问“脱机”枚举: 我尝试过一些简单的事情,
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");
}