首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS模板网址不起作用

问AngularJS模板网址不起作用
EN

Stack Overflow用户
提问于 2014-07-13 16:52:04
回答 2查看 1.4K关注 0票数 0

我正在尝试使用资产的子目录中的html文件在AngularJS中的路由上设置templateUrl。它在本地运行得很好。

模板存储在:#{RAILS_ROOT}/app/assets/templates

代码语言:javascript
复制
# Sets up routing
Blog.config(['$routeProvider', ($routeProvider) ->
# Route for '/post'
$routeProvider.when('/post', { templateUrl: './assets/mainIndex.html', controller: 'PostCtrl' } )

# Default
$routeProvider.otherwise({ templateUrl: './assets/mainIndex.html', controller: 'IndexCtrl' } )])

我尝试过利用asset_path,但似乎根本不起作用。

EN

回答 2

Stack Overflow用户

发布于 2014-07-13 17:08:32

尝试删除资产前的./

代码语言:javascript
复制
$routeProvider.when('/post', { templateUrl: 'assets/mainIndex.html', controller: 'PostCtrl' } )
票数 0
EN

Stack Overflow用户

发布于 2014-07-14 02:47:09

我们必须使用相同的AngularJS/Rails教程。我被同样的部分卡住了。

asset_path可以正常工作。确保您的javascript.coffee文件以.erb结尾

我的模板位于:

代码语言:javascript
复制
app/assets/templates

在我的main.js.coffee.erb (别忘了.erb)中,我将templateUrl定义为:

代码语言:javascript
复制
 templateUrl: '<%= asset_path('mainIndex.html')%>'

这在本地有效。不幸的是,它仍然不能在生产环境中工作(我使用的是OpenShift)。在(public/assets)处生成预编译的文件。但是,asset_path始终解析为

代码语言:javascript
复制
GET /assets/mainIndex.html

而不是像这样:

代码语言:javascript
复制
GET assets/mainIndex-435fd76973a72d658af47da0fb824bcd.html

在日志中,我看到所有的资产都引用了预编译的文件,但由于某种原因,这个templateUrl并非如此。这是我要解决的下一个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24721013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档