javascript - 为什么我的 html 页面没有在 <ui-view> 中渲染?

标签 javascript ruby-on-rails angularjs

我正在尝试将 AngularJS 与 Rails 连接起来。我的观点有些问题。他们没有在

中进行渲染

正在获取我的 View ,但出现错误 [HTTP/1.1 404 Not Found]

我收到这个是为了回复first.html https://github.com/sourabh-garg/vegeta/blob/master/response%20error.html

在我尝试加载的 app/assets/templates/first.html 中。

app/views/application/index.html.erb 有我的索引文件

路由 root 'application#index'

App.js

   var app = angular.module('myapp', ['ui.router'])

      .config(function config($stateProvider){

       $stateProvider.state("index", {
        url : "",
        controller : "FirstCtrl as first",
        templateUrl : "first.html"
       })

       $stateProvider.state("second", {
        url : "/second",
        controller : "SecondCtrl as second",
        templateUrl : "second.html"
       })

      })
      .directive('elem', function () {
        return {
          restrict: 'E',
          templateUrl: "templates/second.html"
        };
      })
      .filter('reverse', function(){

      return function(text){
        return text.split('').reverse().join('');
      }

      })
      .service("greeting", function Greeting(){

        var greeting =  this;

        greeting.message =  "Default";
       })
      .service('Data', [function () {

        return {message: "You are a awesome"}
      }])
      .controller('FirstCtrl', function($scope, greeting, Data){

        var first = this;
        first.greeting = greeting;

        first.data = Data;

        first.reversed = function(message){
          return message.split('').reverse().join('');

        };

      })
      .controller('SecondCtrl', function($scope, greeting){

        var second = this;
        second.greeting = greeting;
      });

最佳答案

1) 您正在使用gem angular-rails-templates

您不需要将模板模块注入(inject)到您的 Angular 应用程序中吗?
angular.module('myapp', ['ui.router', 'templates'])

<小时/>

2) 在文件结构 app/assets/javascripts/ 中,第 5 行的 application.js 文件,查看是否更改 //= require_tree 。 //= require_tree ../templates 更正链接。

资源: angular-rails-template: include templates in rails assets pipeline

关于javascript - 为什么我的 html 页面没有在 <ui-view> 中渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37123714/

相关文章:

javascript - 在 View 中调用belongs_to关系

javascript - 如何划分 RGB 值以获得正确的时间颜色?

javascript - ScrollView 以编程方式滚动按钮按下 react native

ruby-on-rails - 在 RSpec Controller 中 stub named_scope

php - 使用 Ruby on Rails 保护数据?

javascript - AngularJS 和 PHP 未定义属性 : stdClass

javascript - 使用 ID/Class 创建通用 keydown 函数

ruby-on-rails - 你可以在 Rails 中使用带有 webpack 的 turbolinks 吗?

javascript - 循环之前等待内部代码完成

javascript - 单击时调用动画