【发布时间】:2014-11-19 20:24:13
【问题描述】:
在我的视图代码下方(javascript代码在视图中,只是临时用于测试)。
我想将 ASP.NET MVC 模型 (@Model) 分配给 AngularJS 范围 ($scope.person)
我该怎么做?
谢谢,
景色
@model MyApp.Person
<script>
var myApp = angular.module('myApp', []);
myApp.controller('personController', ['$scope', '$http', function ($scope, $http) {
$scope.person = ?????
}]);
</script>
更新 1: 我在 JS 文件中尝试了这段代码:
var myApp = angular.module('myApp', []);
myApp.controller('personController', ['$scope', '$http', function ($scope, $http) {
$scope.person = @Html.Raw(window.person);
}]);
在视图文件中:
<script>
@{
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
}
window.person = serializer.Serialize(Model);
</script>
我得到 2 个错误:
ReferenceError: serializer is not defined (on windows)
window.person = serializer.Serialize(Model);
SyntaxError: illegal character (it's the @)
$scope.person = @Html.Raw(window.person);
【问题讨论】:
-
“非法字符”只是“错误”的 IntelliSense 假设。当用 '' 包围时,错误将消失。
标签: javascript asp.net-mvc angularjs asp.net-mvc-4