Hexo отрывок ‹! больше --› не работает после обновления

Я только что обновил свой блог Hexo до последней версии. После обновления тег <!-- more -->, кажется, перестает работать. Вместо того, чтобы показывать отрывок на главной странице, он просто показывает весь контент. Я использую тему Next.

Я нашел проблему на hexo github: https://github.com/hexojs/hexo/pull/ 1519

Что похоже на проблему, которая у меня возникла. Я попытался отредактировать этот файл локально, но ничего не происходит, все еще не работает.

Есть ли кеш npm или что-то, что мне нужно очистить, когда я редактирую пакет непосредственно в node_modules?

Спасибо


person user2380892    schedule 04.10.2015    source источник
comment
Тема, которую вы используете, может быть несовместима с новой версией Hexo? Какую тему вы используете?   -  person Louis Barranqueiro    schedule 05.10.2015


Ответы (1)


Вы пытались удалить каталог node_modules и перезапустить npm install?

Временное решение: вам нужно перейти на стабильную версию Hexo, установив "hexo": "hexo.stable.version" в package.json, или вы можете добавить свой собственный фильтр для выполнения этой работы в папку scripts вашей темы. Этот файл будет использоваться при запуске Hexo. Назовите файл: выдержка.js. Полный путь будет следующим: your-blog/themes/next/scripts/excerpt.js.

var rExcerpt = /<!-- ?more ?-->/;

hexo.extend.filter.register('after_post_render', function(data) {
    var content = data.content;

    if (rExcerpt.test(content)){
        data.content = content.replace(rExcerpt, function(match, index){
            data.excerpt = content.substring(0, index).trim();
            data.more = content.substring(index + match.length).trim();

            return '<a id="more"></a>';
        });
    } else {
        data.excerpt = '';
        data.more = content;
    }
});

Он должен работать.

person Louis Barranqueiro    schedule 18.10.2015
comment
Спасибо. Я попытался удалить папку node_modules и переустановить, но это не сработало. Временное решение работает! Спасибо - person user2380892; 19.10.2015
comment
Действительно странно, код работал нормально. . после того, как я выключил шестнадцатеричный сервер и попытался снова, он вернулся в старое состояние, как будто excerpt.js больше не читается. - person user2380892; 23.10.2015
comment
да это странно. Чтобы увидеть, выполняется ли скрипт: добавьте console.log в скрипт excerpt.js. - person Louis Barranqueiro; 23.10.2015
comment
Привет, я добавил журнал консоли в файл excerpt.js. Когда я запускаю шестнадцатеричный сервер, я вижу, что журнал распечатывается. - person user2380892; 25.10.2015