2016-08-25 2 views
1

검색을 실행하는 단어에 대해 작업 창 addin을 작성했으며 두 검색 결과 사이의 텍스트를 선택합니다. 며칠 전에 다음 코드까지 이 성공적으로 실행되었습니다javacript api에서 range.expandTo를 사용하는 방법

function onExpandTestClick() { 

     var textToFind = "Word", 
      range; 
     return Word.run(function(context) { 

      var searchResults = context.document.body.search(textToFind, { matchWildCards: false }); 
      context.load(searchResults, "text"); 
      return context.sync() 
       .then(function() { 
        range = searchResults.items[0].getRange("End"); 
        var rangeEnd = searchResults.items[1].getRange("Start"); 
        range.expandTo(rangeEnd); 
        context.load(range, 'text'); 
        return context.sync(); 
       }) 
       .then(function() { 
        range.select(); 
        return context.sync(); 
       }); 
     }) 
     .catch(function (error) { 
      console.log('Error: ' + JSON.stringify(error)); 
      } 
     }); 
    } 

을 그러나 이제 다음과 같은 오류가 발생되고있다 :

Error: {"name":"OfficeExtension.Error","code":"InvalidArgument","message":"InvalidArgument","traceMessages":[],"debugInfo":{"errorLocation":""},"stack":"InvalidArgument: InvalidArgument\n at Anonymous function (https://appsforoffice.microsoft.com/lib/beta/hosted/word-win32-16.01.js:19:183512)\n at pi (https://appsforoffice.microsoft.com/lib/beta/hosted/word-win32-16.01.js:19:198624)\n at ht (https://appsforoffice.microsoft.com/lib/beta/hosted/word-win32-16.01.js:19:198711)\n at g (https://appsforoffice.microsoft.com/lib/beta/hosted/word-win32-16.01.js:19:198531)\n at l (https://appsforoffice.microsoft.com/lib/beta/hosted/word-win32-16.01.js:19:197117)"} 

나는 PreviewCDN를 사용하고 여기에 https://github.com/OfficeDev/office-js-docs/tree/WordJs_1.3_Openspec 을 권장하고 실행하고 있습니다로 사무실 버전 16.0.7167.2040

range.expandTo 방법을 사용하는 올바른 방법입니까? 아니면 API에서 뭔가 바뀌 었습니까?

답변

1

디자인에 약간의 변화가있을지라도이 방법을 올바르게 사용하고 있습니다. 확장 토큰 (최신 문서에서 볼 수 있듯이)의 의미는 호출 범위를 수정하지 않고 새로 확장 된 범위를 반환한다는 것입니다.

이 변경을 수행하려면 Office.js 라이브러리에 대한 업데이트가 필요합니다. 현재 베타 CDN에 문제가있는 것으로 보입니다. 현재 공개적으로 사용 가능한 빌드와 일치하도록 업데이트하는 중입니다.

이 시점에서이 수정 프로그램이 나올 때까지 기다리는 것이 좋습니다.

감사합니다.