Я создал Angular Outlook Addin, используя инструмент Office Yeoman
https://github.com/OfficeDev/generator-office
В app.component.html я настроил простой TextField, например,
<div class="ms-TextField">
<input class="ms-TextField-field" type="text" value="" placeholder={{name}}>
</div>
В app.component.ts я хотел бы поместить текущую дату и время начала в виде текста в это текстовое поле, но я не могу понять, как использовать функцию javascript, предусмотренную в файле angular ts.
https://docs.microsoft.com/en-us/javascript/api/outlook_1_7/office.time?view=office-js#getasync-callback-
Office.context.mailbox.item.start.getAsync(function (asyncResult) {
if (asyncResult.status === "failed") {
console.log("Action failed with error: " + asyncResult.error.message);
}
else {
console.log("Start date and time: " + asyncResult.value);
}
});
Как мне заполнить имя результатом этого обратного вызова и как заставить работать JavaScript в файле TS?
App.Component.TS
import { Component } from '@angular/core';
const template = require('./app.component.html');
@Component({
selector: 'app-home',
template
})
export default class AppComponent {
name = 'Loading...';
// ADD CODE HERE TO SET NAME TO START DATE AND TIME
async run() {
}
}
Я пытался использовать Office.context.mailbox.item.start.getAsync, но команда Office жизнеспособна, только если я установил для нее значение переменной. Я не могу заставить его работать так, как предлагается в документации, и не смог найти ни одного примера, использующего Angular для Office.Js, где они используют эти методы Async для outlook. любые идеи или помощь приветствуются.