在段落中使用 JavaScript|Using JavaScript in Passages

作为最后的手段,Chapbook 允许您在段落文本中混入 JavaScript。为此,请使用 [JavaScript] 修饰符:

[JavaScript]
document.title = '一个棘手的困境';

[continued]
“哎呀,”你暗自思忖,“那块污渍怕是再也洗不掉了。”

JavaScript 修饰符在 Chapbook 中通常不会输出任何内容;但是,如果您想输出文本,该修饰符提供了一个函数 write()——就是普通的 write(),而不是 document.write()——它将输出 HTML 源代码。通过 write() 输出的文本将进行链接和 Markdown 处理。

下面是一个展示 write() 如何工作的例子:

在你发脾气之前,先在心里默数:

[JavaScript]
for (let i = 1; i <= 10; i++) {
    write(i + '... ');
}

你可以像在 JavaScript 中预期的那样引用在变量部分定义的变量。在 JavaScript 中更改它们也会如预期般保持更改。

颜色: '红色的'
--
[JavaScript]
write(`天空是${颜色}。`);

因此,如果你希望你的 JavaScript 代码与故事的其他部分进行通信,最简单的方法是在 变量部分将变量设置为初始值。如果你真的需要在 JavaScript 中创建新变量,可以像下面这样调用 engine.state.set()。不过,这种用法在 Chapbook 的未来版本中可能会改变,而在变量部分初始设置变量将始终有效。

[JavaScript]
let 颜色 = '红色';
engine.state.set('天气', '阳光明媚');

[continued]
真是个{天气}的日子。天空是{颜色}的。

这将显示:

真是个阳光明媚的日子。天空是{颜色}。

{颜色} 会原样显示,因为如果 Chapbook 找不到匹配的插入内容或变量名,它会按输入时的原样显示文本。任何使用 letconst 声明的变量对其他 Chapbook 代码不可见,并且不会在浏览器会话之间保留。

results matching ""

    No results matching ""