2016-06-26 6 views
0

Javascript for Automationでは、要素オブジェクトを作成してコンテナに追加できます。例えば:JXA(自動化のためのJavascript)の要素および/または要素のコンテナの関係の削除

var cal = Application('Calendar') 
    var newEvent = cal.Event(
      {  
       summary: todoSummary, 
       startDate: new Date(), 
       endDate: endDate 
      } 
    ); 
    cal.calendars[0].events.push(newEvent); 
} 

作業するこの方法はうまく多くの場所で説明し、文書化され、その結果、カレンダー(iCalが)これを行うための独自のメソッドを持っている必要はありません。

コンテナ(イベント)からオブジェクト(イベントなど)を削除する方法、または少なくともこのイベントとカレンダーの関係を削除する方法はありますか? AppleScriptでは次のように記述します。

delete (every event whose uid is eventID) 

をだから、JXA版のようなものであろうと思われる:

cal.calendars.events.delete.whose({uid: event.uid()}) 

しかし、様々な試みがちょうど私invalid key formsまたはCan't convert typesエラーを与えます。ありがとう!

答えて

0

それはのように簡単だった、delete方法はApplicationオブジェクト自体に存在することが判明し、よう:

// delete most recent message on first calendar 
var ical = Application('Calendar'); 
var ev = ical.calendars[0].events.last(); 
ical.delete(ev); 

// and specifically for OS X calendar: 
ical.reloadCalendars(); 
関連する問題