假設我們要使用D3 JS庫數據可視化能力,並使用它裏面SAP UI5應用程序,(已經在使用它是基於D3在sap.m VIZ庫但希望有更多的元素和更多的功能來表示數據)如何在使用JS視圖時使用SAP UI5內部的D3元素?
- 是否有可能和建議?
- 如果是,那麼是否有基於D3庫的任何其他框架,它可以用來做集成爲SAP UI5是視圖內一個面向對象的框架和編寫代碼D3不工作?
找到整合的失敗試驗,其中獨立D3代碼執行成功,如下:
createContent : function(oController) {
var canvas = d3.select("idPage01")
.append("svg")
.attr("width",4000)
.attr("height",2000)
.attr("length",100);
canvas.append("circle")
.attr("cx", 200)
.attr("cy",200)
.attr("r",10);
var lv_Page = new sap.m.Page("idPage01",{
title: "VIZ",
content: [
canvas
]
});
return lv_Page;
}
它在控制檯中顯示的錯誤是:
Uncaught TypeError: Cannot read property 'render' of undefined
是的,我們可以直接在DOM元素進行操作,並添加所需的更改,讓我知道,如果有這樣的一些其他的例子。 – Ajay 2014-09-02 05:56:05
@Ajay我也體驗到,當在D3初始化完成onAfterRendering方法時,它效果最好。如果你不想擴展一個新的自定義控件,你可以用常規的'sap.ui.core.HTML'創建一個'div'元素。 – BassT 2014-09-25 13:31:02
好吧,檢查一下,構建一個像VIZ這樣的新框架,以便能夠提供開放的UI5用戶功能,比如VIZ和更多...:D – Ajay 2014-09-26 10:33:42