У меня есть проект веб-надстройки Outlook, основанный на скаффолдинге React и TypeScript, сгенерированном Генератором надстроек Yeoman Office.Однако в intellisense (я использую Webstorm), по-видимому, отсутствуют почти все свойства и методы объекта Office.context.mailbox.item.например, только body и dateTimeCreated, даже не тема и не куча других!
Я не уверен, что это проблема с файлами, сгенерированными Yeoman, или что-то еще (я очень новичок в React),Ниже приведен скриншот доступных реквизитов и сгенерированного файла index.tsx;Я пытаюсь получить доступ к свойствам элемента почты в функции Office.initialize.
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import { AppContainer } from 'react-hot-loader';
import { initializeIcons } from 'office-ui-fabric-react/lib/Icons';
import App from './components/App';
import './styles.less';
import 'office-ui-fabric-react/dist/css/fabric.min.css';
initializeIcons();
let isOfficeInitialized = false;
const title = 'My Outlook React Add-in';
const render = (Component) => {
ReactDOM.render(
<AppContainer>
<Component title={title} isOfficeInitialized={isOfficeInitialized} />
</AppContainer>,
document.getElementById('container')
);
};
/* Render application after Office initializes */
Office.initialize = () => {
isOfficeInitialized = true;
let item = Office.context.mailbox.item;
emailSubject = item.???
render(App);
};
/* Initial render showing a progress bar */
render(App);
if ((module as any).hot) {
(module as any).hot.accept('./components/App', () => {
const NextApp = require('./components/App').default;
render(NextApp);
});
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>