TS1109,WebStorm对可选链接的反应不正确

时间:2019-02-27 09:34:28

标签: typescript webstorm optional-chaining

Ts1109 error

WebStorm认为它是一个三元运算符,并且接下来需要表达式和冒号。也许它认为这是TS代码,虽然这是.js文件中的JS代码,但我不确定。

如何关闭此检查?

4 个答案:

答案 0 :(得分:3)

TypeScript编译器服务在此处报告错误,因为TypeScript不支持可选链接。如果在“设置” |“设置”中启用了服务,则该服务将用于JavaScript linting。语言和框架|在"allowJs"中将TypeScript true设置为tsconfig.json

如果仅希望服务编译/加载TypeScript,请确保未在"allowJs"中设置false或将tsconfig.json设置为`public void showMarker(){ new Thread(new Runnable() { int width = 50; int height = 50; BitmapDrawable bitmapDrawable = (BitmapDrawable) getResources().getDrawable(R.drawable.car); Bitmap b =bitmapDrawable.getBitmap(); Bitmap smallMarker = Bitmap.createScaledBitmap(b,width,height,false); double fetchedLatitude; double fetchedLongitude; int fetchedVehicleId; @Override public void run() { final Gson gson = new Gson(); final StringBuilder stringBuilder = new StringBuilder(); final PaginatedList<VehicleLocationsDO> onTrackVehicles = dynamoDBMapper.scan(VehicleLocationsDO.class, new DynamoDBScanExpression()); runOnUiThread(new Runnable() { @Override public void run() { try{ for (int i=0;i<onTrackVehicles.size();i++){ String OnTrackVehiclesString = gson.toJson(onTrackVehicles.get(i)); Log.e("Json String", OnTrackVehiclesString); stringBuilder.append(OnTrackVehiclesString+"\n"); JsonModel onTrackVehiclesObject = gson.fromJson(OnTrackVehiclesString,JsonModel.class); fetchedLatitude = onTrackVehiclesObject.get_latitude(); fetchedLongitude= onTrackVehiclesObject.get_longitude(); LatLng latLng = new LatLng(fetchedLatitude,fetchedLongitude); if(marker == null){ mMap.addMarker(new MarkerOptions().position(latLng).icon(BitmapDescriptorFactory.fromBitmap(smallMarker)) ); mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(fetchedLatitude, fetchedLongitude), 16.5f)); } else{ MarkerAnimation.animateMarkerToICS(marker,latLng, new LatLngInterpolator.Spherical()); // mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(fetchedLatitude,fetchedLongitude),16.5f)); } } } catch (Exception e){ Log.e("Exception caught",e.toString()); } } }); } }).start(); }`

答案 1 :(得分:1)

Typescript或Javascript中没有空条件运算符。

此运算符仅适用于Angular模板中的类似Javascript的代码

答案 2 :(得分:1)

截至2019年10月1日,TypeScript 3.7 beta中提供了可选的链接。

我不知道是否可以将WebStorm的当前版本配置为使用Beta,但早期版本(2019.3 EAP#5)支持TypeScript 3.7。

答案 3 :(得分:0)

我也遇到了同样的问题,然后更新网络风暴到了这个版本。如此简单的解决方案是更新Webstorm版本。请确保您使用的是 3.7版或更高版本的打字稿,因为仅更高版本支持可选链接。

enter image description here