1

JavaScript API를 사용하여 단어 추가 기능을 개발 중입니다. 문서의 컨텍스트에서 일부 값을 저장해야하므로 같은 클라이언트 또는 다른 클라이언트에서 문서를 다시 열 때 해당 값을 문서에서 가져와 일부 작업을 수행하려고합니다. 나는 설정 개체로 시도했지만 설정 개체는 추가 기능 및 문서별로 저장되므로 다른 클라이언트 추가 기능에서는 값을 사용할 수 없습니다. 어디에서나 사용할 수있는 값을 문서와 함께 저장하는 방법을 알려주십시오.워드 문서에 값 (키, 값) 쌍을 저장하는 방법

감사합니다.

답변

1

원하는 것은 사용자 지정 문서 속성입니다.

여기를보세요 : https://github.com/OfficeDev/office-js-docs/blob/WordJs_1.4_OpenSpec/reference/word/custompropertycollection.md

+0

답장을 보내 주셔서 감사합니다. "https://appsforoffice.microsoft.com/lib/beta/hosted/office.js"를 사용하고 있으며 customPropertyObject가 정의되지 않았 음을 보여줍니다. 제발 조언. – Amit

+1

최신 업데이트가 있는지 확인하십시오. 빌드가 필요합니다. 16.7766+ –

1

당신은 또한 당신이 필요로하는 모든 데이터, 문서에 저장 기본적으로 XML 파일이있는 XML 부분을 저장할 수 있습니다. xml 파트를 추가하고 검색하는 방법에 대해이 샘플을 확인하십시오. https://github.com/OfficeDev/Word-Add-in-Work-with-custom-XML-parts/blob/master/C%23/CustomXMLAppWeb/App/Home/Home.js

btw 귀하의 요구에 더 적합한 것으로 보이는 문서 속성을 사용하시기 바랍니다. Word에서 최신 업데이트를 사용해야합니다! 여기

문서 속성 (제 1 예 숫자 값, 두 번째 캐릭터)를 생성하는 방법에 대한 예이다 : 그것들을 검색하는 방법에 대한 코드

function insertNumericProperty() { 
 
     Word.run(function (context) { 
 
      context.document.properties.customProperties.add("Numeric Property", 1234); 
 
      return context.sync() 
 
       .then(function() { 
 
        console.log("Property added");  
 
       }) 
 
       .catch(function (e) { 
 
        console.log(e.message); 
 
       }) 
 
     }) 
 

 
    } 
 

 
    function insertStringProperty() { 
 
     Word.run(function (context) { 
 
      context.document.properties.customProperties.add("String Property", "Hello World!"); 
 
      return context.sync() 
 
       .then(function() { 
 
        console.log("Property added");  
 
       }) 
 
       .catch(function (e) { 
 
        console.log(e.message); 
 
       }) 
 
     }) 
 
    }
여기

이다 :

function readCustomDocumentProperties() { 
 
     Word.run(function (context) { 
 
      var properties = context.document.properties.customProperties; 
 
      context.load(properties); 
 
      return context.sync() 
 
       .then(function() { 
 
        for (var i = 0; i < properties.items.length; i++) 
 
         console.log("Property Name:" + properties.items[i].key + ";Type=" + properties.items[i].type +"; Property Value=" + properties.items[i].value); 
 
       }) 
 
       .catch(function (e) { 
 
        console.log(e.message); 
 
       }) 
 
     }) 
 
    }

+0

제안에 감사드립니다. 위 링크를 따라 왔지만 문서의 키/값 쌍을 추가, 편집 및 삭제할 수 없습니다. 나에게 많은 도움이 될 작업 코드를 제발 제공해 주시겠습니까? 고맙습니다. – Amit

+0

위의 코드는 기능적이지만 필요한 모든 이름/값 쌍이있는 XML 문서를 저장한다는 아이디어가 있습니다. 이 시점에서 사용자 지정 문서 속성을 사용하는 것이 좋을 것입니다. 원하는 작업에 더 나은 솔루션 인 것 같습니다. –

+0

사용자 지정 문서 속성을 만들고 읽는 방법에 대한 자세한 내용을 추가했습니다. 감사합니다 –

관련 문제