我想在rails中使用angularjs。为此,我想要停用的rails视图,并且只使用angularjs html文件。我使用angular-resource.min.js来路由url,然后在我的application_controller中创建index操作来停用rails视图。Rails视图现在是停用的,但是没有脚本和angular文件在项目中运行,当服务器启动时,我看到一个空白页面,这个页面的html是空的,javascripts不会加载到页面中。
我在这个项目中有以下代码:
Forums_controller.rb
class ForumsController < InheritedResources::Base
respond_to :json
endcomments_controller.rb
class CommentsController < InheritedResources::Base
belongs_to :forum
respond_to :json
endapplication_controller
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
def index
render :layout => 'application', :nothing => true
end
endconfig/rootes.rb
Simpleforum::Application.routes.draw do
resources :forums, :defaults => {format: :json} do
resources :comments, :defaults => {format: :json}
end
root to: 'application#index'
end我将所有的angularjs需求添加到资源文件夹中。
我使用这个宝石:
gem 'inherited_resources'
gem 'bootstrap-sass'
gem 'quiet_assets'
gem 'angularjs-rails-resource', '~> 1.1.1'angularjs app controller
app.js.erb
'use strict';
angular.module('app', ['ngResource'])
.config(['$routeProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {controller: 'ForumIndexController', templateUrl: '<%= asset_path('templates/index.html') %>'})
.when('/forum/new', {controller: 'ForumCreateController', templateUrl: '<%= asset_path('templates/new.html') %>'})
.when('/forum/:id', {controller: 'ForumShowController', templateUrl: '<%= asset_path('templates/show.html') %>'})
.otherwise({redirectTo: '/'});
}
]);application.js
//= require jquery
//= require jquery_ujs
//= require angularjs/rails/resource
//= require angularjs/rails/resource/extensions/snapshots
//= require angular.min
//= require angular-resource.min
//= require ../angular/app
//= require_tree ../angular问题出在哪里?如何修复此错误?
Note:我使用this tutorial创建这个项目。
发布于 2017-10-16 09:49:25
这是我要在assets/javascript/application.js中更改的内容:
//= require jquery
//= require jquery_ujs
//= require angular.min <-----------(*)
//= require angularjs/rails/resource
//= require angularjs/rails/resource/extensions/snapshots
//= require angular-resource.min
//= require ../angular/app
//= require_tree ../angular我有一个类似的problem,这是我修复它的方式
https://stackoverflow.com/questions/25155831
复制相似问题