Office-JS错误

时间:2017-07-14 20:21:30

标签: typescript office-js

我试图在office-js中使用async / await根据this guide添加并且我有我假设的打字稿编译问题,我根本无法自己解决...任何帮助都将是非常感谢。

错误消息:

  

https://localhost:44394/Home.js \ n \ n \ nSCRIPT1005第10行第10行的JavaScript严重错误:预期'('

打字稿代码:

Word.run(async function (context) {
// ...
await context.sync();
});

编译的java脚本代码:

错误的第10行是return __awaiter = ....

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
    function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
    function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
    function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
    step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Word.run(function (context) {
return __awaiter(this, void 0, void 0, function* () {
    // ...
    yield context.sync();
});
});

1 个答案:

答案 0 :(得分:1)

基于已编译的代码,看起来TypeScript的目标是ES 6 + ,而不是ES5。 ES5是在标准浏览器上运行的。

您需要将编译选项更改为目标ES5(并添加“es2015”的库定义,因此您可以从编译器的角度使用Promises,并在运行时包含Promises的库/ polyfill)。

PS:如果你能指出网站或书籍的哪些部分导致你偏离流浪,我很乐意在那里添加一个澄清的评论。