2017-04-03 20 views
0

我有一個錯誤信息:在組件無法讀取屬性「getFixedT」的陣營,童話

Cannot read property 'getFixedT' of undefined. TypeError: Cannot read property 'getFixedT' of undefined 
at Translate.componentWillMount (webpack:///./~/react-i18next/dist/commonjs/translate.js?:78:46) 
at eval (webpack:///./~/react-dom/lib/ReactCompositeComponent.js?:348:23) 
at measureLifeCyclePerf (webpack:///./~/react-dom/lib/ReactCompositeComponent.js?:75:12) 
at ReactCompositeComponentWrapper.performInitialMount (webpack:///./~/react-dom/lib/ReactCompositeComponent.js?:347:9) 
at ReactCompositeComponentWrapper.mountComponent (webpack:///./~/react-dom/lib/ReactCompositeComponent.js?:258:21) 
at Object.mountComponent (webpack:///./~/react-dom/lib/ReactReconciler.js?:46:35) 
at ReactCompositeComponentWrapper.performInitialMount (webpack:///./~/react-dom/lib/ReactCompositeComponent.js?:371:34) 

我的例子寄存器命名空間:

export default translate('example namespace', { wait: true })(MyComponent) 

我的配置i18n.js樣子:

import i18n from 'i18next'; 
 
import XHR from 'i18next-xhr-backend'; 
 
import LanguageDetector from 'i18next-browser-languagedetector'; 
 

 
export default i18n 
 
    .use(XHR) 
 
    .use(LanguageDetector) 
 
    .init({ 
 
    fallbackLng: 'en', 
 
    ns: [ 
 
     'example namespace', 
 
    ], 
 
    defaultNS: 'example namespace', 
 
    debug: true, 
 
    backend: { 
 
     loadPath: 'locales/{{lng}}/{{ns}}.json', 
 
    }, 
 
});

我還沒有任何想法如何解決這個問題,因爲在瀏覽器中運行服務器時,所有組件都與語言資產一起工作。我使用kadira /故事書:「^ 2.35.3」,也許你有一些經驗如何設置故事書來加載我的資產的所有命名空間。

回答

1

就我而言,我需要在故事書中添加addDecorator,並用i18提供程序包圍我的故事。

+0

你能舉個例子嗎? – chovy