簡體   English   中英

Tableau Javascript API workbook.activeSheet()

[英]Tableau Javascript API workbook.activeSheet()

我可能在這里遺漏了一些非常明顯的東西,但是為什么以下內容沒有在日志中寫入任何內容? (這里的jsfiddle- http://jsfiddle.net/hiwilson1/qk9cjuh2/-盡管它不適用於我)

<html>
<head>
<style>
#tableauViz {
    width: 1500px;
    height: 500px;
}
input[type="button"] {
    margin: 5px;
}
</style>
<script type="text/javascript" src="https://online.tableau.com/javascripts/api/tableau-2.0.0.min.js"></script>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script>
window.onload = function() {

    // append visualisation container
    d3.select("body").append("div").attr("id", "tableauViz")

    // function to build visualisation.
    function initializeViz() {
        var placeholderDiv = document.getElementById("tableauViz");
        var url = "http://public.tableau.com/views/WorldIndicators/GDPpercapita";
        var options = {
            width: placeholderDiv.offsetWidth,
            height: placeholderDiv.offsetHeight,
            hideTabs: false,
            hideToolbar: true,
            onFirstInteractive: function () {
                workbook = viz.getWorkbook();
                activeSheet = workbook.getActiveSheet();
            }
        };
        viz = new tableau.Viz(placeholderDiv, url, options);
    }  

    initializeViz();

    // switch worksheet function.
    function switchTab(val) {
        workbook.activateSheetAsync(val);
    }    

    d3.select("body").append("input")
        .attr("type", "button")
        .attr("value", "click me")
        .on("click", function() {switchTab("GDP per capita map")})

    console.log(workbook.activeSheet)
}
</script>
</head>

<body>

</body>
</html>

我已經建立了可視化,然后裝配了一個按鈕來運行一個小的功能來更改工作表。 我可以從該函數中訪問該工作簿對象,但是該函數沒有什么特別的授予它訪問該工作簿對象的權限。 為什么我也不能將有關工作簿對象的信息輸出到日志?

我收到的錯誤是“參考錯誤:未定義工作簿”。 如果未定義,函數如何使用它?

在調用onFirstInteractive回調之前,不會創建workbook變量,但是在初始化tableau.Viz之后立即調用console.log() 初始化該對象的行為不會導致調用回調-稍后會發生。

根據您這樣調用console.log的原因,將調用移到onFirstInteractive回調的末尾可能很有意義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM