Open peternixey opened 8 years ago
Nope, but the semicolon at the end of that template is quite strange
Yep. It must be down to some package dependency that's gone weird on El Capitan. If (it had better be when) I find out I'll post it back here
I'm seeing this as well on my Mac running El Capitan. Any updates?
I do think that you have to check the paths once again. If you have set wrong template locations you would got caught in described situation. So double check your config.
So I had been using sprockets 2.x and angular-rails-templates 0.1.3 (yeah, I know) and updated to sprockets 3.x and found that I needed to update angular-rails-templates as well. It worked perfectly before the upgrade, but now does the bug the OP talks about.
I just changed my gem to 'angular-rails4-templates' and it works perfectly... Do you still think it has to do with the paths?
I might to be wrong. But recently I ran into the same debug session. And in my case it was just wrong paths. And even strange semicolon appeared as described above. I suggest to ensure that processor for ng html registered properly.
Hmm, I'll look into it more when I get a chance. For now I've had to go back to the old versions I was using. Thanks for your help!
I'm seeing this as well moving from version .2 to 1.0.
Edit: I'm also on Ubuntu 14.04, not OSX.
Ok so I managed to fix this but ended up finding two different ways that actually addressed it.
inside_paths
optionI keep a blank rails project to try these things out independently of everything in our application. This was running a very slightly different combo of angular-templates
and sprockets
Gem versions in my blank project
Sprockets 2.12.4
Angular-Rails-templates 0.2.0
With this combination, inside_paths
fixed it immediately
Adding config.angular_templates.inside_paths = ['app/assets']
to application.rb
immediately fixed the issue and the templates came out sweetly.
Gem versions in our production project
sprockets 2.12.3
angular-rails-templates 0.1.4
With this combination, adding the config option config.angular_templates.inside_paths = ['app/assets']
did not unfortunately fix the problem.
However upgrading to
sprockets 3.6.0
angular-rails-templates 1.0.0
Did fix it. Success.
See how up-to-date you can get. If you can't get completely up-to-date then try adding the config option in
I found my issue as well. We were using Rails.root.join
to declare our sub directories, it appears v1.0.0 doesn't respect absolute paths.
Per @DarkArc's comment, I looked into the sub directories. I was able to get it working properly after using the inside_paths
config. We currently have our frontend in a separate folder from app
. It used to work without the inside_paths config on 0.1.3
but seems to be required now on 1.0.0
. Not sure if that's a bug or intended... but this got it to work.
config.assets.paths << Rails.root.join('app_ui')
...
config.angular_templates.inside_paths = ['app_ui']
@peternixey could you post an empty Rails project or instructions on how to set it up to duplicate this issue? I have never seen this issue myself.
@pitr Sure. I've put it onto https://github.com/Copyin/blank_rails.
angular_rails_broken
branchhttp://localhost:5000/assets/templates/test.js?body=1
to see the issue. Lastly can you ping me once you've got it as I'll make the repo private again. ta.
I still can't replicate. Following your instructions I get:
$ curl "http://localhost:5000/assets/templates/test.js?body=1"
// Angular Rails Template
// source: app/assets/javascripts/templates/test.html
angular.module("templates").run(["$templateCache", function($templateCache) {
$templateCache.put("test.html", "<div> This is a test </div>")
}]);
Apologies. I should have explained that it is definitely system dependent. My colleague who was running exactly the same repo did not have the issue.
I don't know how best to snapshot but I'm happy to send you versions of dependent brew installations etc if that would help?
Sent from my iPhone
On Apr 25, 2016, at 8:07 AM, ☃ pitr notifications@github.com wrote:
I still can't replicate. Following your instructions I get:
$ curl "http://localhost:5000/assets/templates/test.js?body=1" // Angular Rails Template // source: app/assets/javascripts/templates/test.html
angular.module("templates").run(["$templateCache", function($templateCache) { $templateCache.put("test.html", "
This is a test") }]); — You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub
Thanks @peternixey.
For me, it worked: https://github.com/pitr/angular-rails-templates/issues/136#issuecomment-211537845
Any progress with this issue?
Hit this today. @DarkArc 's hypothesis was correct for me, too :)
Hit this today, again, 5+ years later. I had no memory of this but grateful for things like this sticking around!
The following problem is definitely not a problem with the gem as we have this running correctly on our staging and other development servers. Please feel free to close it immediately if you don't have any ideas as to what it may be as it's definitely an issue with my development machine. On the off-chance that you do though I wanted to just float it.
For some reason, on my local machine, rails-templates is not wrapping the normal javascript around the templates themselves. Instead of compiling into something like:
The templates are simply compiling to:
Have you ever seen this before? Do you have any immediately have any thoughts as to what config setting could be causing this? If not don't sweat it but I thought it was worth asking
Thank you.