получение специального символа вместо одинарной кавычки при записи в файл HTML с использованием nodeJS и cheerio - PullRequest
0 голосов
/ 28 ноября 2018

Я просто играл с узлом, поэтому я хотел заменить следующий html в моем html-файле

<div class="replace" onclick="opennewtab('one')">

Хотел заменить его на

<div class="replace" onclick="replacedFunc('12345&')">

Итак, у меня естьследующий код узла:

let fs = require('fs'),
cheerio = require('cheerio');

$ = cheerio.load( fs.readFileSync( `${__dirname}/res/writetojs.html` ) );
$('.replace').attr('onclick' , "replacedFunc('12345')");
console.log($.html());
inner_content =  $.html();
fs.writeFileSync( `${__dirname}/res/newwritetojs.html` , inner_content, 'utf8');

Но я получаю

<div class="replace" onclick="replacedFunc(&apos;12345&apos;)">

как я могу получить ' вместо &apos; ??

1 Ответ

0 голосов
/ 29 ноября 2018

Cheerio декодирует HTML-объекты по умолчанию, при необходимости вы можете отключить эту функцию, передав decodeEntities: false option

Вот пример:

$ = cheerio.load( fs.readFileSync( `${__dirname}/res/writetojs.html` ), {decodeEntities: false} );
...