Ruby on rails 4 Turbolinks外部javascript(此处:ACE编辑器)
我正在尝试在使用TurboLink的页面中实现ACE编辑器。但是,编辑器仅在我直接调用该页面或重新加载该页面时工作。导航到它不会触发使编辑器工作的所有必要步骤 当前集成:Ruby on rails 4 Turbolinks外部javascript(此处:ACE编辑器),ruby-on-rails-4,ace-editor,turbolinks,Ruby On Rails 4,Ace Editor,Turbolinks,我正在尝试在使用TurboLink的页面中实现ACE编辑器。但是,编辑器仅在我直接调用该页面或重新加载该页面时工作。导航到它不会触发使编辑器工作的所有必要步骤 当前集成: <script src="//cdnjs.cloudflare.com/ajax/libs/require.js/2.1.8/require.js" type="text/javascript" charset="utf-8"></script> <script src="//cdnjs.clou
<script src="//cdnjs.cloudflare.com/ajax/libs/require.js/2.1.8/require.js" type="text/javascript" charset="utf-8"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/ace/1.1.01/ace.js" type="text/javascript" charset="utf-8"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/ace/1.1.01/mode-html.js" type="text/javascript" charset="utf-8"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/ace/1.1.01/mode-css.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">
function initialize_editor() {
var editor = ace.edit("html-editor");
editor.setTheme("ace/theme/clouds");
editor.getSession().setMode("ace/mode/html");
editor.setValue($('#template_html').val());
$('form').on('submit', function(event) {
$('#template_html').val(editor.getValue());
});
}
$(document).ready(initialize_editor);
$(document).on('page:load', initialize_editor);
</script>
函数初始化_编辑器(){
var editor=ace.edit(“html编辑器”);
编辑器.setTheme(“ace/theme/clouds”);
editor.getSession().setMode(“ace/mode/html”);
editor.setValue($('#template_html').val();
$('form')。在('submit',函数(事件){
$('#template_html').val(editor.getValue());
});
}
$(文档).ready(初始化编辑器);
$(文档).on('page:load',初始化编辑器);
这会抛出一个未捕获类型错误:无法读取未定义的属性“ace/ace”。
离开页面后,js似乎卡在页面上,每次导航加载时,我都会收到一个未捕获引用错误:未定义ace
在这里包含ACE编辑器(或其他外部库)的正确方式是什么?通过链轮加载它们将不起作用,当将它们复制到vendor/javascripts/
并要求它们出现在链轮清单中时,我很难让它正常运行
关于TurboLink有什么启示吗 我可以通过获取所需的js文件并将它们放入vendor/javascript路径来解决这个问题。对于空格和制表符的特殊字符(其他人也在此处报告)的初始问题,可以通过将文件显式存储为utf8和BOM来解决。TurboLink仅在通过url导航时才会重新加载页面内容,这意味着不会加载/重新加载javascript,请尝试此gem,这可能会解决你的问题。我和Ace和TurboLink有问题。我不想把它放到我的资产管道中,因为文件很大,我只在管理界面上使用编辑器。强制应用程序的所有用户下载编辑器似乎不公平。