我想知道下面函数中的oApp如何成为全局变量?
我尝试调试它和Google搜索,但是找不到正确的答案。我在这里附加index.html,这是我声明了oApp的唯一文件(我的意思是尽管没有声明,但我应该在其中声明)其他文件正在使用它。所以是的,我确实需要使它成为全局的,但是我不明白的是为什么它会自动变为全局。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta charset="UTF-8">
<title>My Pets</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.m, sap.ui.layout'
data-sap-ui-async="true"
data-sap-ui-preload="async"
data-sap-ui-compatVersion="edge"
data-sap-ui-resourceroots='{"sapui5.archi.mvcapp":"./webapp/"}'>
</script>
<script>
sap.ui.getCore().attachInit(function (){
var oData={
"countpets" :"2",
"pets" :[
{
"ID":0,
"Name":"Akira",
"Details":{
"Type":"Cat",
"Age":5,
"Color":"Grey",
"ZipCode":"122002",
"Country":"India"
}
},
{
"ID":1,
"Name":"Milo",
"Details":{
"Type":"Dog",
"Age":7,
"Color":"Brown",
"ZipCode":"248001",
"Country":"India"
}
}]
};
var oModel=new sap.ui.model.json.JSONModel();
oModel.setData(oData);
sap.ui.getCore().setModel(oModel);
var oPageMasterView = sap.ui.view("masterPage",{
type:sap.ui.core.mvc.ViewType.JS,
viewName: "sapui5.archi.mvcapp.view.Master"
});
var oPageDetail = sap.ui.view("detailPage",{
type:sap.ui.core.mvc.ViewType.JS,
viewName: "sapui5.archi.mvcapp.view.Detail"
});
oApp=new sap.m.App({
initialPage:"masterPage"
});
oApp.addPage(oPageMasterView).addPage(oPageDetail);
oApp.placeAt("content");
});
</script>
</head>
<body id="content" class="sapUiBody sapUiResponsiveMargin">
</body>
</html>
我只需要知道为什么没有将其全球化就可以正常工作。当我第一次向oApp讲话时,我什至没有使用'var'声明它。