fix(v2): Use require.resolve to resolve plugin path in presets (#2794)

This commit is contained in:
Sam Zhou 2020-05-22 16:57:02 -04:00 committed by GitHub
parent 20fbceb9f1
commit 1503943e3f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 19 additions and 14 deletions

View file

@ -7,11 +7,11 @@
module.exports = function preset(context, opts = {}) { module.exports = function preset(context, opts = {}) {
return { return {
themes: [['@docusaurus/theme-bootstrap', opts.theme]], themes: [[require.resolve('@docusaurus/theme-bootstrap'), opts.theme]],
plugins: [ plugins: [
['@docusaurus/plugin-content-pages', opts.pages], [require.resolve('@docusaurus/plugin-content-pages'), opts.pages],
['@docusaurus/plugin-content-blog', opts.blog], [require.resolve('@docusaurus/plugin-content-blog'), opts.blog],
['@docusaurus/plugin-content-docs', opts.docs], [require.resolve('@docusaurus/plugin-content-docs'), opts.docs],
], ],
}; };
}; };

View file

@ -13,17 +13,19 @@ module.exports = function preset(context, opts = {}) {
return { return {
themes: [ themes: [
['@docusaurus/theme-classic', opts.theme], [require.resolve('@docusaurus/theme-classic'), opts.theme],
// Don't add this if algolia config is not defined. // Don't add this if algolia config is not defined.
algolia && '@docusaurus/theme-search-algolia', algolia && require.resolve('@docusaurus/theme-search-algolia'),
], ],
plugins: [ plugins: [
['@docusaurus/plugin-content-docs', opts.docs], [require.resolve('@docusaurus/plugin-content-docs'), opts.docs],
['@docusaurus/plugin-content-blog', opts.blog], [require.resolve('@docusaurus/plugin-content-blog'), opts.blog],
['@docusaurus/plugin-content-pages', opts.pages], [require.resolve('@docusaurus/plugin-content-pages'), opts.pages],
isProd && googleAnalytics && '@docusaurus/plugin-google-analytics', isProd &&
isProd && gtag && '@docusaurus/plugin-google-gtag', googleAnalytics &&
isProd && ['@docusaurus/plugin-sitemap', opts.sitemap], require.resolve('@docusaurus/plugin-google-analytics'),
isProd && gtag && require.resolve('@docusaurus/plugin-google-gtag'),
isProd && [require.resolve('@docusaurus/plugin-sitemap'), opts.sitemap],
], ],
}; };
}; };

View file

@ -40,8 +40,11 @@ Presets in some way are a shorthand function to add plugins and themes to your d
```js ```js
module.exports = function preset(context, opts = {}) { module.exports = function preset(context, opts = {}) {
return { return {
themes: ['@docusaurus/themes-cool', '@docusaurus/themes-bootstrap'], themes: [
plugins: ['@docusaurus/plugin-blog'], require.resolve('@docusaurus/themes-cool'),
require.resolve('@docusaurus/themes-bootstrap'),
],
plugins: [require.resolve('@docusaurus/plugin-blog')],
}; };
}; };
``` ```