wuguanghai45 / bisheng-antd-doc-template

antd 文档系统 简化
18 stars 13 forks source link

jsx转ReactNode #4

Closed bing1021 closed 5 years ago

bing1021 commented 6 years ago

我自己弄得demo里面 demo index 都是对象而不是func。

我看你的例子里面,demo是这样的:

{
   basic: {
      meta: {},
      preview: func,
     ....
   }
}

重点是这个preview, 我的demo里面没有,我的jsx就无法转ReactNode了。

请问这是为什么呢?能解答下吗?

wuguanghai45 commented 6 years ago

https://github.com/wuguanghai45/bisheng-antd-doc-template/blob/9b6eadcde369019974b85cbbfa76d5f841efa14a/site/theme/template/Content/Demo.jsx

image

bing1021 commented 6 years ago

这是你的代码,我加了俩个log

export default collect(async (nextProps) => {
  console.log(nextProps);
  const pathname = nextProps.location.pathname;
  const pageDataPath = pathname.replace('-cn', '').split('/');
  const pageData = isChangelog(pathname) ?
          nextProps.data.changelog.CHANGELOG :
          nextProps.utils.get(nextProps.data, pageDataPath);
  console.log(pageData)
  if (!pageData) {
    throw 404; // eslint-disable-line no-throw-literal
  }

  const locale = utils.isZhCN(pathname) ? 'zh-CN' : 'en-US';
  const pageDataPromise = typeof pageData === 'function' ?
          pageData() : (pageData[locale] || pageData.index[locale] || pageData.index)();
  const demosFetcher = nextProps.utils.get(nextProps.data, [...pageDataPath, 'demo']);
  if (demosFetcher) {
    const [localizedPageData, demos] = await Promise.all([pageDataPromise, demosFetcher()]);
    return { localizedPageData, demos };
  }
  return { localizedPageData: await pageDataPromise };
})(MainContent);

下面是结果: b24eb69b-420f-49f1-9152-a5cc762b69b2

而我的是这样的:

2882ebca-7b32-4dc4-80c8-546831cd5a41
bing1021 commented 6 years ago

我想知道 为什么你的demo 是一个func ,执行后可以拿到preview。而我的只有obj

wuguanghai45 commented 6 years ago

好久没搞这个。。。。是不是因为你的demos下面有多个文件。。抱歉没有太多时间研究。。

bing1021 commented 6 years ago

应该不是多个文件的原因,我看antd里面是有多个markdown的。我在好好看看吧,没办法,文档太贫瘠

bing1021 commented 6 years ago

撩你一下,上海拼多多考虑吗?

wuguanghai45 commented 6 years ago

对现在的工作很满意。。。没有跳槽的想法。。。不过可以加一下好友