2015-10-04 2 views
4

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

Я нашел вопрос о hexo GitHub: https://github.com/hexojs/hexo/pull/1519

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

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

Благодаря

+0

Тема, которую вы используете, может быть несовместима с новой версией Hexo? Какую тему вы используете? –

+0

Привет, Я использую следующую тему: https://github.com/iissnan/hexo-theme-next – user2380892

ответ

1

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

Временно решение: Вы должны понизить до стабильной версии Hexo, установив "hexo": "hexo.stable.version" в вашем package.json или вы можете добавить свой собственный фильтр, чтобы сделать работу в scripts папке вашей темы. Этот файл будет использоваться при запуске Hexo. Назовите файл: excerpt.js. Полный путь будет: ваш-блог/темы/следующий/скрипты/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; 
    } 
}); 

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

+0

Спасибо. Я попытался удалить папку node_modules и переустановить, но это не сработало. Временное решение работает! Спасибо – user2380892

+0

Действительно странно, код работал нормально. , после того, как я выключил сервер hexo и попытался снова, он вернулся в прежнее состояние, как будто excerpt.js больше не читается. – user2380892

+0

Да, это странно. Чтобы узнать, выполняется ли сценарий: добавьте console.log в скрипт 'excerpt.js' –

 Смежные вопросы

  • Нет связанных вопросов^_^