0
在我的Ruby on Rails應用程序中,我通過ajax調用生成視圖。Ruby on Rails腳本未加載
我使用的是以下代碼段。
$("#a_div_id").html("<%= escape_javascript(render 'index')%>");
和我想要呈現的觀點是_index.html.erb:
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}
</div>
<script>
alert('first');
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
alert('second');
$scope.firstName = "John";
$scope.lastName = "Doe";
});
alert('third');
</script>
當我呈現的觀點,我只得到了第一個和第三個消息。但是,當我將這段代碼添加到dashboard.html.erb中而不是通過ajax代碼進行渲染時,它完全可行。
在第一種情況下,我收到以下錯誤。
angular.min.js:6 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=myApp&p1=Error%3A%2…ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2Fangular.min.js%3A20%3A274)
at angular.min.js:6
at angular.min.js:38
at n (angular.min.js:7)
at g (angular.min.js:37)
at eb (angular.min.js:41)
at c (angular.min.js:19)
at yc (angular.min.js:20)
at Zd (angular.min.js:19)
at HTMLDocument.<anonymous> (angular.min.js:294)
at fire (jquery.self-bd7ddd3….js?body=1:3233)
我是在我束手無策,我couln't決定,我錯過了什麼,
任何建議,
感謝。
我嘗試省略escape_javascript它沒有工作。我也嘗試在渲染索引後加載angularJS,但它並沒有工作。 –
您是否在瀏覽器控制檯中看到錯誤?將調試器放在$ scope.firstName =「John」上面;然後一次運行一個步驟 –
Yeap。未捕獲的錯誤:[$ injector:modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=myApp&p1=Error%3A%2...ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1。 4.8%2Fangular.min.js%3A20%3A274) 在angular.js:38 在angular.js:4458 以n(angular.js:340) 在g(angular.js:4419) 在EB(在jd(angular.js:1697) 處在cd(angular.js:1676) 處在HTMLDocument處的Zd(angular.js:1591) 處。(angular.js:29013) at fire(jquery.self-bd7ddd3 ... .js?body = 1:3233) –