我有一个轨道应用程序以及角度,我需要填充一大块HTML,以便它可以填写textarea标记的默认文本。目前我做的是添加这样的文字更清洁的方式来添加在JavaScript中的大块HTML的轨道
"<div class='navbar navbar-default letter-header hidden-sm hidden-xs'>\n" +
" <div class='container'>\n" +
" <div class='letter-navbar-header navbar-header'>\n" +
" <a href='/'><img src='/assets/logo.png' class='letters-logo navbar-brand'></a>\n" +
" </div>\n" +
" <div class='navbar-header header-text'>\n" +
" <div class='navbar-text'>\n" +
" "text" + "\n" +
" </div>\n" +
" </div>\n" +
" <div class='letter-navbar-header navbar-header'>\n" +
" <a href='/'>\n" +
" <img src='' class='second-logo'>\n" +
" </a>\n" +
" </div>\n" +
" <div class='navbar-header navbar-right'>\n" +
" {{ user_login }}" + "\n" +
" </div>\n" +
" </div>\n" +
"</div>\n"
我想知道是否有更干净的方法来做到这一点。我一直在使用js.erb文件与渲染功能,这样
<%= j render('navbar') %>
尝试,但把它放在资产文件夹,以便渲染功能无法正常工作https://stackoverflow.com/a/8370847/1087841。我想知道是否有更好的方法来做到这一点。
[编辑] js.erb文件实际上是一个角度工厂,它具有导航栏的默认HTML,然后角度控制器可以使用它来呈现默认数据。工厂文件然后也被添加到application.js中作为需求。 这是一个需要默认的HTML
<textarea name="t[navigation]" id="input-navigation-bar" ng-model="t.navigation_bar" class="form-control" rows="10"></textarea>
textarea的我可以在值标签与默认的HTML,但它有ng-model
所以没有被显示出来。所以我为默认数据创建了一个工厂。现在工厂居住在/ assets中,并且在application.js中有一个//= require 'default_html_factory'
。