2017-03-07 7 views
6

सरकारी संस्करण को तोड़ने:Office.js ब्राउज़र इतिहास कार्यों nullifies इतिहास उपयोग यहाँ उपलब्ध office.js की

window.history.replaceState = null; 
window.history.pushState = null; 

इस में से कुछ टूट जाता है:

https://appsforoffice.microsoft.com/lib/1/hosted/office.js 

यह कोड में निम्नलिखित लाइनों में शामिल है मेरे एक्सेल ऐड-इन्स में इतिहास कार्यक्षमता (मैं react और react-router का उपयोग कर रहा हूं)

Office.js उन इतिहास फ़ंक्शन को निरस्त क्यों कर रहा है रों? मुझे प्रलेखन में कोई स्पष्टीकरण नहीं मिल रहा है।

+0

मुझे टीम –

उत्तर

5

एक्सेल में उपयोग किया गया ब्राउज़र नियंत्रण इतिहास API का समर्थन नहीं करता है, अगर प्रतिस्थापन और पुशस्टेट को हटाया नहीं गया तो वे प्रतिक्रिया के लिए उपलब्ध होंगे लेकिन हमेशा कॉल किए जाने पर अपवाद फेंक दें। जब तक कोई नया ब्राउज़र नियंत्रण उपलब्ध न हो, आपको हैश आधारित रूटिंग पर स्विच करना होगा या इतिहास API के लिए पॉलीफ़िल का उपयोग करना होगा। https://github.com/devote/HTML5-History-API काम करता प्रतीत होता है यदि आप office.js के बाद स्क्रिप्ट संदर्भ शामिल करते हैं।

+1

के साथ उस पर अनुवर्ती करने दें: इसमें शामिल होने के लिए: मंच/ढांचे के स्तर पर इसके लिए दीर्घकालिक फ़िक्स होने पर चर्चा होगी। लेकिन पॉलीफिल आपके सबसे अच्छे शॉर्ट-टर्म समाधान की संभावना है। –

+0

अरे @ माइकलज़्लाटकोव्स्की-माइक्रोसॉफ्ट, क्या सभी ऐड-इन होस्ट और प्लेटफॉर्म के लिए असमर्थित ब्राउज़र एपीआई की एक सूची/संदर्भ है? –

+0

हाय @ माइकलज़्लाटकोव्स्की-माइक्रोसॉफ्ट, history.js जोड़कर मेरे ऐप को कई परेशानीएं मिलती हैं, हाल ही में एक [यह] है [https://stackoverflow.com/questions/48042888/office-initialize-raises-rootscopeinfdig)। तो ऐसा लगता है कि मुझे html5mode को अक्षम करना है और इस प्रकार मेरे ऐप में history.js का उपयोग करने की आवश्यकता नहीं है। क्या आपके पास html5mode के संबंध में office.js के बारे में कोई अपडेट है? – SoftTimur

संबंधित मुद्दे