在AppleScript中检查多个对象属性

时间:2015-09-29 10:19:04

标签: applescript reminders

我写了一个AppleScript,它会检查Reminders应用程序中的现有提醒以查找其名称。如果不存在具有给定名称(Erinnerung)的提醒,则应创建。

但以下代码仅检查未完成的提醒:

tell application "Reminders"
    if exists (reminders with properties {name:Erinnerung, completed:true}) then
    else
        set newremin to make new reminder
        set name of newremin to Erinnerung
    end if
end tell

所以我试着立刻检查名称和完成状态:

jasmine.getEnv().currentSpec.description

但是我得到错误

  

“”属性:true“kann nicht diesem”提醒“folgen。”   (“”属性:true“不能遵循此”提醒“”)

为什么Reminders应用仅检查未完成的提醒?为什么我不能一次检查两个属性?有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:0)

通过一个或多个属性过滤对象,过滤数组并计算结果的元素。

一个属性(我将变量Erinnerung更改为文字字符串)

tell application "Reminders"
    set erinnerungen to reminders whose name is "Erinnerung"
    if (count erinnerungen) is 0 then
        set newremin to make new reminder
        set name of newremin to "Erinnerung"
    end if
end tell

两个属性

tell application "Reminders"
    set erinnerungen to reminders whose name is "Erinnerung" and completed is true
    if (count erinnerungen) is 0 then
        set newremin to make new reminder
        set name of newremin to "Erinnerung"
    end if
end tell

如果要检查可以通过名称引用的对象,也可以使用此

tell application "Reminders"
    if not (exists reminder "Erinnerung") then
        set newremin to make new reminder
        set name of newremin to "Erinnerung"
    end if
end tell