将布尔值从 c# 传递到角度视图
本文关键字:视图 布尔值 | 更新日期: 2023-09-27 18:34:43
这是我的简单代码:
C#
public bool isAllowed { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
isAllowed = false;
}
角度控制器
<script>
var myApp = angular.module('myApp', []);
myApp.value('allowed', <%= isAllowed %>);//myApp.value('allowed', False);
myApp.controller('TestController', ['$scope', function ($scope, allowed) {
$scope.result = allowed;
}]);
</script>
视图
<body data-ng-app="myApp">
<div data-ng-controller="TestController">{{result}}</div>
</body>
我最终得到
未捕获的引用错误:未定义 False
和
myApp.value('allow', False(;
如何将布尔值传递给 $scope.result?
默认情况下
,ASP.NET MVC会将值true
转换为True
,false
转换为False
,同时返回模型值以供查看。
在这种情况下,您的值False
被视为JavaScript变量,这就是您获得Uncaught ReferenceError: False is not defined
的原因。(布尔值应为 true
/false
(。
所以基本上你可以通过应用一些操作将其转换为布尔值,如下所示。
myApp.value('allowed', <%= isAllowed == 'True' %>);
除此之外allowed
您错过了在 DI 内联数组中注入的依赖项
//dependency added here VVVVVVVVVV
myApp.controller('TestController', ['$scope', 'allowed', function ($scope, allowed) {
试试这个:
myApp.value('allowed', <%= isAllowed.ToString().ToLower() %>);