我有一個角度應用程式,在我的 index.html 中,我在標簽中有一個變數,如下所示:
<script type="text/javascript">
let global = 5;
</script>
我需要在一個角度組件內讀取和編輯這個變數的值,但我不知道該怎么做。
我看到如果您在javascript的“視窗”物件(window.global = 5)中創建變數然后在角度組件中使用它,則可以讀取該值,但我認為它對我不起作用,因為我需要如上所述,該變數位于外部。
是否可以?有任何想法嗎?
uj5u.com熱心網友回復:
declare拯救的關鍵字:首先,用var(let無效)宣告你的全域
<script type="text/javascript">
var someVar = 5;
</script>
并在 Angular 組件中訪問它:
declare var someVar;
// ...
this.foo = someVar;

此外,我嘗試了@mbojko答案,它也有效。
uj5u.com熱心網友回復:
您可以將視窗變數傳遞給控制器??中的范圍。
<!DOCTYPE html>
<html>
<script>window.HELLO_MSG = 'Hello,';</script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
{{ wlcmMsg " " firstName " " lastName }}
</div>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.wlcmMsg = window.HELLO_MSG;
$scope.firstName = "John";
$scope.lastName = "Doe";
});
</script>
</body>
</html>
或者您可以像這里一樣注入整個視窗物件: 如何將視窗注入服務?
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/461974.html
標籤:javascript 有角度的 网络
上一篇:在IIS10上呼叫可執行檔案,退出代碼為-1073741819
下一篇:使用訪問令牌獲取訪問令牌?
