当前位置: 首页 > 知识库问答 >
问题:

Rails 4 AngularJS:未找到指令的templateUrl?

邬阳
2023-03-14

我试图在AngularJS中创建一个指令,将HTML拆分为可重用的部分:

应用程序/资产/脚本/产品/指令/产品.js:

app.directive('productsfilter', function() {
  return {
    restrict: 'E',
    templateUrl: "/templates/filter-template.html"
  }
});

但是,找不到模板:

< code >错误:[$compile:tpload]无法加载模板:/templates/filter-template . html http://errors.angularjs.org/1.2.20/$compile/tpload?P0 =/templates/filter-template . html

我还尝试了< code >../templates/filter-template . html 和< code > templates/filter-template . html 但都不起作用。是因为Rails的资产管道吗?

这是我在应用程序/资产/java脚本中的文件夹树:

└── products
    ├── controllers
    │   ├── mens_controller.js
    │   ├── productscontroller.js
    │   ├── womens_eyeglasses_controller.js
    │   └── womens_sunglasses_controller.js
    ├── directives
    │   └── products.js
    ├── filters
    │   └── productsfilters.js
    ├── services
    │   └── productsservices.js
    └── templates
        └── filter-template.html

共有2个答案

严柏
2023-03-14
app.directive('productsfilter', function() {
  return {
    restrict: 'E',
    templateUrl: "filter-template.html"
  }
});

如果你不用这块宝石,就用它。

gem 'angular-rails-templates'

为我工作。

明松
2023-03-14

我遇到过同样的问题。我的模板路径是:

assets/templates/partials/question/multipleChoice.html

当我将模板移动到:

assets/templates/multipleChoice.html
<%= asset_path('multipleChoice.html') %>
asset_path()

为了使方法能够找到模板,我指出了它,如下所示:

templateUrl: "<%= asset_path('partials/question/multipleChoiceSingleAnswer.html') %>"

我不想将我的模板放在公共文件夹中。我希望Rails为我处理它并使其动态。

 类似资料:
  • 我是新的Python开发和尝试使用pipenv。我运行命令,它成功运行: 然而,当我在一个新的根项目目录中运行命令时,我收到以下消息:。我怀疑我可能需要修改我的. bashrc,但是我不清楚要向文件中添加什么,或者是否需要修改。

  • 我在Heroku上使用Postgresql数据库托管了一个RoR应用程序,并且一直在使用PG备份工具将数据库从我的应用程序备份到本地机器上。由于该应用程序仍在开发中,它从编程的角度帮助我降低了我的同事对数据库所做的更改。几个月来,我一直在成功地使用PG备份进行捕获和恢复,但最近,当我运行此处所示的典型命令时: 在curl命令执行后,我遇到此错误: 你知道为什么会这样吗?显然,问题是我无法恢复下载的

  • 我使用的是节点0.10。35和grunt指挥部运作良好。现在升级到0.12之后。3 grunt命令已停止工作。 OS:Mac OSX 10.10.1节点:0.12.3 npm:2.9.1 grunt:0.4.5 我认为可能有问题的节点安装所以我清理安装了3-4次 我试着用- node-v0.12.3.pkg 节点版本管理器(nvm) 许多此类问题的解决方案建议使用 然后使用安装本地节点模块。 我遵

  • 我试着做一个文件: 但是得到了错误: Android:命令未找到 我试图设置Android SDK的路径,但没有帮助: 有没有可能解决这个问题? UPD:我正在使用这个软件中的Git Shell:http://git-scm.com/download/win

  • 我正在学习laravel并遵循这个教程, 但当我尝试安装npm时,它说

  • 我的discord bot能够运行其on_消息代码,但当我尝试运行命令%ping时,它会出错并显示“discord.ext.commands.errors.CommandNotFound:未找到命令”ping“。 我已经导入了所有需要的模块,在底部写了client.run(令牌),并定义了我的令牌和客户端对象,我认为没有必要包含这些代码行。 我已经包括等待client.process_comman