错误TS2705:ES5 / ES3中的异步函数或方法需要'Promise'构造函数。确保您具有“ Promise”构造函数的声明,或在public void setSpinnerData(ArrayList<String> spinnerArray) {
ArrayAdapter<String> adapter = new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item, spinnerArray);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
CategorySpinner.setAdapter(adapter);
CategorySpinner.setSelection(0);
}
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
ArrayList<String> spinnerArray = ArrayList();
if (data.moveToFirst()) {
do {
int categoryNameColumnIndex = data.getColumnIndex(CategoryBaseColumns.CATEGORY_NAME);
spinnerArray.add(data.getString(categoryNameColumnIndex));
//Log.e(data.getString(categoryNameColumnIndex))
} while (data.moveToNext());
}
setSpinnerData(spinnerArray);
}
选项中包含“ ES2015”。
--lib
答案 0 :(得分:1)
启动最小的新TypeScript项目时,您的tsconfig.json
文件将接近空白。这意味着编译器不知道您选择的平台上将提供哪些库。从本质上讲,您将或多或少地使用javascript的准系统版本,并将npm install
的任何库类型放入依赖项中。准系统是指包括一些默认库。在撰写本文时,documentation指出:
将注入默认的库列表。注入的默认库为:
- 对于--target ES5:DOM,ES5,ScriptHost
- 对于--target ES6:DOM,ES6,DOM.Iterable,ScriptHost
因为在示例代码中有一些使用async
关键字的代码-这是Promise API周围的语法糖-TypeScript将尝试将其编译为Promises。但是,您尚未列出平台可以支持的库。
为了告诉编译器您要定位的API,您需要提供一些提示。
有两种方法可以做到这一点:
"lib":["es2015"]
添加到您的tsconfig.json
文件中tsc --lib ES2015