首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Turbolinks外部javascript (此处: ACE编辑器)

Turbolinks外部javascript (此处: ACE编辑器)
EN

Stack Overflow用户
提问于 2013-10-09 14:03:47
回答 1查看 1.2K关注 0票数 2

我正在尝试在一个页面中实现一个ACE编辑器,它使用的是turbolinks。但是,只有当我直接调用该页面或重新加载该页面时,编辑器才能工作。导航到它并不会触发使编辑器工作所必需的每一步。

目前的整合:

代码语言:javascript
复制
<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>

这会在离开页面后抛出一个Uncaught TypeError: Cannot read property 'ace/ace' of undefined.,js似乎被卡在页面上,并且在每次导航加载时,我都会得到一个Uncaught ReferenceError: ace is not defined

在这里包含ACE编辑器(或其他外部库)的正确方法是什么?通过链轮加载它们将不起作用,当将它们复制到vendor/javascripts/并要求它们在链轮清单中显示时,我很难让它正常运行。

关于涡轮机和正确的方法有什么启示吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-16 07:02:35

我可以通过获取所需的js文件并将它们放入供应商/javascript路径来解决这个问题。对于空格和制表符的特殊字符的初始问题(其他人在这里也有报告)可以通过使用BOM显式地将文件存储为utf8来解决。

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

https://stackoverflow.com/questions/19274323

复制
相关文章

相似问题

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