TvarToken - bhsd-harry/wikiparser-node GitHub Wiki
扩展:Translate 中的 <tvar>
标签。这个类继承了 TagToken 类的全部属性和方法,这里不再列出。
✅ 在 Mini 和 Browser 版本中可用。
🌐 在 Browser 版本中可用。
从 TagToken 继承的属性
展开
type: boolean
是否使用了旧语法。
// legacy (main)
var tvar = Parser.parse('<translate><tvar|1></></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar|1>');
assert.ok(tvar.legacy);
tvar = Parser.parse('<translate><tvar name=2></tvar></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar name=2>');
assert.ok(!tvar.legacy);
展开
type: string | undefined
变量名。
// name (main)
var tvar = Parser.parse('<translate><tvar|1></></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar|1>');
assert.strictEqual(tvar.name, '1');
tvar = Parser.parse('<translate><tvar name="2"></tvar></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar name="2">');
assert.strictEqual(tvar.name, '2');
✅ 展开
type: 'tvar'
// type
var tvar = Parser.parse('<translate><tvar|1></></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar|1>');
assert.strictEqual(tvar.type, 'tvar');
从 TagToken 继承的方法
展开
returns: this
深拷贝节点。
// cloneNode (main)
var [
opening,
closing,
legacyOpening,
legacyClosing,
] = Parser.parse('<translate><tvar name=a></tvar><tvar|b></></translate>')
.querySelectorAll('tvar');
assert.equal(opening, '<tvar name=a>');
assert.equal(closing, '</tvar>');
assert.equal(legacyOpening, '<tvar|b>');
assert.equal(legacyClosing, '</>');
assert.deepStrictEqual(opening.cloneNode(), opening);
assert.deepStrictEqual(closing.cloneNode(), closing);
assert.deepStrictEqual(legacyOpening.cloneNode(), legacyOpening);
assert.deepStrictEqual(legacyClosing.cloneNode(), legacyClosing);
展开
设置变量名。
// setName (main)
var tvar = Parser.parse('<translate><tvar|1></></translate>')
.querySelector('tvar');
assert.equal(tvar, '<tvar|1>');
tvar.setName('a');
assert.equal(tvar, '<tvar|a>');
tvar = Parser.parse(`<translate><tvar name="'"></tvar></translate>`)
.querySelector('tvar');
assert.equal(tvar, `<tvar name="'">`);
tvar.setName('"');
assert.equal(tvar, `<tvar name='"'>`);