text: const got = require('@/utils/got');
  const cheerio = require('cheerio');
  
  module.exports = async (ctx) => {
      const category = ctx.params.category || 'lxzn-yzjy';
  
      const rootUrl = 'http://www.93.gov.cn';
      const currentUrl = `${rootUrl}/${category}`;
      const response = await got({
          method: 'get',
          url: currentUrl,
      });
  
      const $ = cheerio.load(response.data);
  
      const list = $('li.clearfix a')
          .slice(0, 15)
          .map((_, item) => {
              item = $(item);
              return {
                  title: item.text(),
                  link: `${rootUrl}${item.attr('href')}`,
                  pubDate: new Date(item.next().text()).toUTCString(),
              };
          })
          .get();
  
      const items = await Promise.all(
          list.map((item) =>
              ctx.cache.tryGet(item.link, async () => {
                  const detailResponse = await got({
                      method: 'get',
                      url: item.link,
                  });
                  const content = cheerio.load(detailResponse.data);
  
                  item.description = content('.pageContent').html();
                  item.author = content('.pageTitle ul li').eq(1).text().replace('来源：', '');
  
                  return item;
              })
          )
      );
  
      ctx.state.data = {
          title: $('title').text(),
          link: currentUrl,
          item: items,
      };
  };
  