CommentToken - bhsd-harry/wikiparser-node GitHub Wiki
HTML 注释。这个类继承了 Token 类的全部属性和方法,这里不再列出。
✅ 展开
type: boolean
是否闭合。
// closed
var {firstChild} = Parser.parse('<!--');
assert.equal(firstChild, '<!--');
assert.ok(!firstChild.closed);
firstChild.closed = true;
assert.equal(firstChild, '<!---->');
✅ 展开
type: string
内部 wikitext。
// innerText
var {firstChild} = Parser.parse('<!--a-->');
assert.equal(firstChild, '<!--a-->');
assert.strictEqual(firstChild.innerText, 'a');
// innerText (main)
var {firstChild} = Parser.parse('<!--a-->');
firstChild.innerText = 'b';
assert.equal(firstChild, '<!--b-->');
hidden
展开
type: true
CommentToken 不可见,只读。
// hidden (main)
var {firstChild} = Parser.parse('<!--a-->');
assert.equal(firstChild, '<!--a-->');
assert.ok(firstChild.hidden);
✅ 展开
returns: LintError[]
报告潜在语法错误。
// lint
var {firstChild} = Parser.parse('<!--');
assert.equal(firstChild, '<!--');
assert.deepStrictEqual(firstChild.lint(), [
{
rule: 'unclosed-comment',
severity: 'error',
message: 'unclosed HTML comment',
startLine: 0,
startCol: 0,
startIndex: 0,
endLine: 0,
endCol: 4,
endIndex: 4,
suggestions: [
{
range: [4, 4],
text: '-->',
desc: 'close',
},
],
},
]);
展开
returns: this
深拷贝节点。
// cloneNode (main)
var {firstChild, lastChild} = Parser.parse('<!--a--><!--b'),
closed = firstChild.cloneNode(),
open = lastChild.cloneNode();
assert.equal(firstChild, '<!--a-->');
assert.equal(closed, '<!--a-->');
assert.equal(lastChild, '<!--b');
assert.equal(open, '<!--b');
assert.deepStrictEqual(closed, firstChild);
assert.deepStrictEqual(open, lastChild);