是否有可能將javascript對象或數組轉換回原生dart地圖和/或列表?我試圖從javascript返回一個清單文件作爲對象,並希望將其轉換爲飛鏢地圖對象。使用js-interop如何將JavaScript數組和對象轉換爲本地dart地圖。
5
A
回答
2
在API許多變化是由今年的表現,下面的代碼是亞歷山大Ardhuin的答案適用於最新的(#30104)飛鏢Sdk
import "dart:convert";
import "dart:js" as js;
convert(js.JsObject object)
{
return JSON.decode(js.context['JSON'].callMethod("stringify", [ object ]));
}
3
您可以在Javascript上下文中使用內置的Javascript方法JSON.stringify()。
Future getManifest() {
var completer = new Completer();
js.scoped(() {
var chrome = js.context.chrome;
var manifest_proxy = chrome.runtime.getManifest();
var manifest_string = js.context.JSON.stringify(manifest_proxy);
var manifest = JSON.parse(manifest_string);
logger.fine("manifest_string = $manifest_string");
completer.complete(manifest);
});
return completer.future;
}
這將打印出以下控制檯發送完成者飛鏢地圖。
manifest_string = {"app":{"background":{"scripts":["main.js"]}},"manifest_version":2,"minimum_chrome_version":"23","name":"chrome.dart - test","version":"1"}
4
您可以將JavaScript的JSON轉換成飛鏢JSON有:
import 'dart:json';
import 'package:js/js.dart' as js;
convert(js.Proxy jsonProxy) => JSON.parse(js.context.JSON.stringify(jsonProxy));
相關問題
- 1. 如何將數組轉換爲地圖?
- 2. 使用JavaScript將地圖轉換爲JSON對象
- 3. 將Java地圖轉換爲Javascript地圖
- 4. 將JavaScript數組轉換爲JavaScript對象
- 5. 將本地圖像轉換爲base64 javascript
- 6. 將JsonNode對象轉換爲地圖
- 7. 如何將一串地圖座標轉換爲數組javascript?
- 8. 如何將JavaScript對象數組轉換爲單個對象?
- 9. 通過在gwt中使用javascript本地函數將java對象轉換爲json
- 10. PHP和MongoDB。如何將PHP數組轉換爲JavaScript對象?
- 11. 將PHP數組轉換爲JavaScript對象
- 12. 將JavaScript數組轉換爲JSON對象
- 13. 將JSON轉換爲JavaScript對象數組
- 14. 將JavaScript數組轉換爲java對象
- 15. 將php對象轉換爲javascript數組
- 16. 將pdo對象轉換爲javascript數組
- 17. 將JavaScript數組轉換爲對象
- 18. 如何將案例類對象圖轉換爲地圖
- 19. Golang - 將數組/地圖轉換爲JSON
- 20. 將地圖數組json轉換爲csv
- 21. 如何將數組轉換爲JavaScript中的數組對象?
- 22. 如何將此php數組轉換爲JavaScript數組對象?
- 23. Javascript:將UTC日期()對象轉換爲本地時區
- 24. 如何將屬性列表(如地圖)轉換爲對象[]
- 25. 如何將數組轉換爲對象?
- 26. 如何將對象轉換爲數組?
- 27. 如何將數組轉換爲對象?
- 28. 將JS對象轉換爲Dart類
- 29. 如何使用Jackson將對象轉換爲使用默認打字的地圖?
- 30. 將JavaScript API返回的JavaScript對象轉換爲DART類
你不需要使用'Future'。 –
不錯,所以被範圍化並不需要Future return。在這個庫中,我開始使用Future作爲由Chrome提供的大部分調用的模式。* apis。如果是這種情況,那麼我只需要期貨就需要回調的方法。 http://goo.gl/x2H2K –