2016-11-08 27 views
0

我看到SAP documantion這段代碼sinppet:SAPUI5:編譯聲明HTML不工作

https://help.sap.com/saphelp_nw74/helpdata/en/91/f1454b6f4d1014b6dd926db0e91070/content.htm

我想在下面這個簡單的例子來使用它。

我所得到的是在控制檯此錯誤消息:

遺漏的類型錯誤:sap.ui.core.plugin.DeclarativeSupport.compile不是一個函數

我該如何解決呢?

<!Doctype HTML> 
<html> 
<title>Declarative Programming for SAPUI5 - sample01</title> 
    <script id='sap-ui-bootstrap' 
    type='text/javascript' 
    src='https://sapui5.hana.ondemand.com/resources/sap-ui-core.js' 
    data-sap-ui-libs="sap.ui.commons" 
    data-sap-ui-modules='sap.ui.core.plugin.DeclarativeSupport' 
    > 
    </script> 

<script> 
function addButton(){ 
    console.log('addButton'); 
$("body").append('<div id="button"><div data-sap-ui-type="sap.ui.commons.Button" data-text="This button is added dynamically"></div></div>'); 
sap.ui.core.plugin.DeclarativeSupport.compile(document.getElementById("button")); 
} 
setTimeout(addButton,10); 
</script> 
</head> 
</html> 
+0

的[UI5不AngularJS工作]可能的複製(http://stackoverflow.com/questions/40469120/UI5-犯規工作與 - angularjs) – matbtt

回答

0

應該以這種方式工作:

<!Doctype HTML> 
<html> 
<title>Declarative Programming for SAPUI5 - sample01</title> 
    <script id="sap-ui-bootstrap" 
      src="https://sapui5.hana.ondemand.com/resources/sap-ui-core.js" 
      data-sap-ui-theme="sap_bluecrystal" 
      data-sap-ui-libs="sap.ui.commons" 
      data-sap-ui-modules="sap.ui.core.plugin.DeclarativeSupport"> 
    </script> 
<script> 
    sap.ui.getCore().attachInit(function() { 
    $("body").append('<div id="button"><div data-sap-ui-type="sap.ui.commons.Button" data-text="This button is added dynamically"></div></div>'); 
    sap.ui.core.DeclarativeSupport.compile(document.getElementById("button")); 
    }); 
</script> 
</head> 
</html> 

活生生的例子:https://jsbin.com/gegubuzuni/1/edit?html,output