2017-10-31 8 views
0

Office Add-ins 용 JavaScript API를 사용하고 새 단락이 추가 될 때마다 발생하는 이벤트에 함수를 연결하려고합니다 (결국 단락 삭제/수정).OfficeJS (Office 추가 기능 플랫폼)에서 단락 이벤트 수신

나는 통해 반복하고과 같이 문서에있는 모든 단락을 인쇄 할 수 있습니다

Word.run(context => { 
    var paragraphs = context.document.body.paragraphs; 
    context.load(paragraphs, 'text');  
    return context.sync().then(() => { 
    for (var i = 0; i < paragraphs.items.length; i++) { 
     console.log(paragraphs.items[i].text); 
    } 
    }); 
}); 

내가 뭘 원하는 새로운 단락을 듣고 그 기반으로 작업을 할 수 있습니다. EventType.NodeInserted을 찾았지만 문서의 모든 단락에 사용하는 방법을 모르겠습니다. 이상적으로 나는 다음과 같은 일을 가지고 싶습니다

Office.context.document.addHandlerAsync(Office.EventType.NodeInserted, 
    function (paragraphEvent) { 
    // do something useful with new paragraph 
}); 

나는 모든 문서를 검토 한하지만 난 내가 힘든 시간을 새로운 항에 이벤트를 바인딩하는 방법을 이해하기 API에 새로 온 사람 (전체 문서에서 특정 섹션이 아닌).

답변

1

문서의 단락 변경을 감지하는 이벤트가 없습니다. eventType.NodeInserted는 새 노드가 사용자 정의 XML 부분에 추가 될 때 사용됩니다.

유일한 옵션은 문서를 폴링하고 변경 사항을 추론하는 것입니다. 문서의 특정 섹션에 관심이 있다면 바인딩을 만들고 binding.dataChanged 이벤트를 구독하고 델타를 추론 할 수 있습니다.

희망이 도움이 ... 후안.