可以说我有以下内容:
我希望 $scope.bookname 的初始值为 123。如果 bookname 在其他地方更新,我希望输入中的值发生变化(即模型绑定)。
123 是动态设置的(来自 rails),所以我不能早先在 javascript 中设置它(即 $scope.bookname = 123; 将不起作用)。
任何想法如何做到这一点?
可以说我有以下内容:
我希望 $scope.bookname 的初始值为 123。如果 bookname 在其他地方更新,我希望输入中的值发生变化(即模型绑定)。
123 是动态设置的(来自 rails),所以我不能早先在 javascript 中设置它(即 $scope.bookname = 123; 将不起作用)。
任何想法如何做到这一点?
有几种方法可以让我从头顶上做到这一点(我不熟悉 Rails,但我会尽量让它模糊到适用于所有服务器端语言):
<script>
标签并创建一个var BookName = 123
; 其中 '123' 显然是服务器端变量的值。然后在你的控制器中,初始化它:$scope.bookname = BookName;
$scope.bookname = $('#inputID').val();
另外,这是另一种技术(blesh的回答):Angular js init ng-model from default values
泽熊的回答是正确的。在 rails 中执行此操作的方法是将 JavaScript 文件制作为 erb 文件并<%= =>
在 rails 变量周围使用标签。