gpt4 book ai didi

javascript - firepad:作为 firepad 的 codemirror div 中的默认文本的变量

转载 作者:行者123 更新时间:2023-12-02 17:22:20 26 4
gpt4 key购买 nike

我正在将 firepad 与我的 django 项目集成。我在 javascript 方面没有太多专业知识,因此我面临一个问题。

如果我按照所有步骤操作,一切似乎都会正常工作。

<script>
//// Initialize Firebase.
//var firepadRef = getExampleRef();
// TODO: Replace above line with:
var ref = new Firebase('<YOUR FIREBASE URL>');

//// Create CodeMirror (with line numbers and the JavaScript mode).
var codeMirror = CodeMirror(document.getElementById('firepad-container'), {
lineNumbers: true,
mode: 'javascript'
});

//// Create Firepad.
var firepad = Firepad.fromCodeMirror(firepadRef, codeMirror);

//// Initialize contents.
firepad.on('ready', function() {
if (firepad.isHistoryEmpty()) {
firepad.setText('// JavaScript Editing with Firepad!\nfunction go() {\n var message = "Hello, world.";\n console.log(message);\n}');
}
});
</script>

但是,我在通过 django View 呈现的页面上有一个名为“user”的字典变量。

我想在上面的示例中使用这个变量作为 {{user.textkey}} 而不是固定的默认文本。 textkey 指向文本。

user = {'textkey':text}

类似这样的:-

firepad.setText('{{user.textkey}}');

希望你明白我的意思。这里的问题是文本可能包含撇号或 unicode 字符(如左单引号或右单引号)等任何内容。此外 django 替换变量中的\n 并导致 javascript 不支持的格式。

例如:-

如果文本包含

Hello \xe2\x80\x98World\xe2\x80\x99:\n Good morning:\n 

然后

firepad.setText('{{user.textkey}}');

看起来像这样

firepad.setText('{{Hello 'World'
Good morning
}}');

JavaScript 无法理解它。

如何解决这个问题?

欢迎任何建议。

最佳答案

你可以试试

firepad.setText('{{user.textkey | escapejs}}')

我发现记录了here .

关于javascript - firepad:作为 firepad 的 codemirror div 中的默认文本的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23817258/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com