我有一个Razor cshtml文件,它引用服务器端MyModel和客户端javascript文件,我希望保留所有JavaScript功能:
foo.cshtml
@model BunnyModel
@section scripts {
<script type="text/javascript" src="foo.js"></script>
}
foo.js
function doStuff() {
$("#blah").text("Bunnies: " + @Model.BunnieCollection.Count);
}
当然,VS2015在foo.js文件中无法识别我的BunnyModel。
我可以给Visual Studio提供某种类型的提示,以便它能在.js文件中提供模型智能感知吗?
答案 0 :(得分:2)
您可以将js放在cshtml中:
@model BunnyModel
@section scripts {
<script type="text/javascript">
function doStuff() {
$("#blah").text("Bunnies: " + @Model.BunnieCollection.Count);
}
</script>
}
...或将变量放在范围内并在外部函数中引用它:
CSHTML
@model BunnyModel
@section scripts {
<script type="text/javascript">
var bunnieCount = @Model.BunnieCollection.Count
</script>
<script type="text/javascript" src="foo.js"></script>
}
foo.js
function doStuff() {
$("#blah").text("Bunnies: " + bunnieCount);
}