मैं सर्वर-साइड-रेंडर किए गए पृष्ठों के साथ कोणीय 10 पर चार्ट.जेएस (एनजी 2-चार्ट) चलाने की कोशिश कर रहा हूं। दुर्भाग्य से, यह हमेशा के साथ दुर्घटनाग्रस्त हो जाता है:

ERROR { Error: Uncaught (in promise): ReferenceError: window is not defined

संदर्भ त्रुटि: विंडो परिभाषित नहीं है

तो मेरा सवाल यह है कि क्या कोई इसे चलाने में सक्षम था?

0
Lars 9 अक्टूबर 2020, 13:44

1 उत्तर

सबसे बढ़िया उत्तर

ऐसा होने का कारण यह है कि आप NodeJS के साथ SSR चला रहे हैं और कोई विंडो ऑब्जेक्ट नहीं है, इसलिए आपको NodeJS प्रतिस्थापन की आवश्यकता है।

मेरा सुझाव है कि डोमिनोज़ स्थापित करें

npm i --save-dev domino

फिर अपने server.ts में

const domino = require('domino');

const template = fs
  .readFileSync(path.join('dist/browser', 'index.html')) // Or whereever your rendered index.html is
  .toString();


const window = domino.createWindow(template);
(global as any).window = window;
(global as any).document = window.document;
1
mchl18 9 अक्टूबर 2020, 14:28