{"componentChunkName":"component---node-modules-stvad-gatsby-theme-garden-src-templates-roam-page-js","path":"/NextJS","result":{"data":{"roamPage":{"title":"NextJS","childMdx":{"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"nextjs\"\n  }, \"NextJS\"));\n}\n;\nMDXContent.isMDXComponent = true;","outboundReferences":[],"inboundReferences":[{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"dDECTOELt\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC560\\uD50C\\uB9AC\\uCF00\\uC774\\uC158 \\uD504\\uB808\\uC784\\uC6CC\\uD06C: \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \", \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/Remix\",\n      \"title\": \"Remix\",\n      \"className\": \" internal-link\"\n    }, \"Remix\"), \", \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/Astro\",\n      \"title\": \"Astro\",\n      \"className\": \" internal-link\"\n    }, \"Astro\"), \" \\uB4F1\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"e07ae9b9-0ad3-56ac-aace-b6ddf1ea7783","string":"애플리케이션 프레임워크: [[NextJS]], [[Remix]], [[Astro]] 등","fields":{"parentPage":{"title":"June 21st, 2022","fields":{"slug":"/June-21st-2022"}},"slug":"/dDECTOELt"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"tfU2il43u\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/Remix\",\n      \"title\": \"Remix\",\n      \"className\": \" internal-link\"\n    }, \"Remix\"), \", \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \" \\uB4F1\\uB4F1 \\uC720\\uBA85\\uD55C SSR \\uD504\\uB808\\uC784\\uC6CC\\uD06C\\uB4E4\\uC774 \\uCC44\\uD0DD\\uD55C \\uBC29\\uBC95\\uC774\\uAE30\\uB3C4\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"5149df4a-1e76-58fb-b6fa-86d4911b62fd","string":"[[Remix]], [[NextJS]] 등등 유명한 SSR 프레임워크들이 채택한 방법이기도","fields":{"parentPage":{"title":"June 17th, 2022","fields":{"slug":"/June-17th-2022"}},"slug":"/tfU2il43u"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"KNQbFe8e4\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \"\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"43804399-0a7a-5a55-8054-686b1a34b9bb","string":"[[NextJS]]","fields":{"parentPage":{"title":"React","fields":{"slug":"/React"}},"slug":"/KNQbFe8e4"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"Q-oNg8rKT\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC775\\uC2A4\\uD150\\uC158 \\uD310 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \"\\uAC00 \\uBAA9\\uD45C\\uC778 \\uB4EF\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"da7473d5-8682-5801-ab61-643f90f31ca8","string":"익스텐션 판 [[NextJS]]가 목표인 듯","fields":{"parentPage":{"title":"June 13th, 2022","fields":{"slug":"/June-13th-2022"}},"slug":"/Q-oNg8rKT"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"SqP_y7QnV\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"https://nextjs.org/blog/next-12-2\"\n    }, \"Next.js 12.2\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"hashtag_NextJS\",\n      \"className\": \"hashtag internal-link\"\n    }, \"NextJS\"), \"\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"8ZAw1rB9h\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uAE30\\uB300\\uD588\\uB358 \\uAE30\\uB2A5\\uB4E4\\uC774 \\uB9CE\\uC774 \\uB79C\\uB529\\uD588\\uB2E4\")),\n    mdxType: \"Block\"\n  })));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"ff5721c4-9aaa-5104-a661-bbd75d6f98d5","string":"[Next.js 12.2](https://nextjs.org/blog/next-12-2) #NextJS","fields":{"parentPage":{"title":"June 29th, 2022","fields":{"slug":"/June-29th-2022"}},"slug":"/SqP_y7QnV"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"MvqZcZVLW\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \"\\uB97C \\uD1B5\\uD574 \\uAD6C\\uD604\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"iHRf867LY\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"getInitalProps\\uB97C \\uD1B5\\uD574 \\uAC00\\uC838\\uC634\")),\n    mdxType: \"Block\"\n  }), mdx(Block, {\n    id: \"C7vQKccOD\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"data fetching \\uB77C\\uC774\\uBE0C\\uB7EC\\uB9AC\\uB97C \\uC0AC\\uC6A9 -> react-query\")),\n    mdxType: \"Block\"\n  }), mdx(Block, {\n    id: \"2l4MBenvV\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, mdx(\"inlineCode\", {\n      parentName: \"p\"\n    }, \"useResource\"), \" \\uD6C5\\uC744 \\uB9CC\\uB4E4\\uC5B4 \\uC0AC\\uC6A9\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"3E_7Jp2GL\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"createResource\\uB97C \\uD1B5\\uD574 \\uC0AC\\uC6A9\\uD560 \\uB9AC\\uC18C\\uC2A4 (key, fetcher) \\uC815\\uC758\")),\n    mdxType: \"Block\"\n  }), mdx(Block, {\n    id: \"WH7Wu6R3D\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uD398\\uC774\\uC9C0\\uC5D0 \\uC0AC\\uC6A9\\uD560 \\uAC01 \\uB9AC\\uC18C\\uC2A4\\uB97C \\uBCC4\\uB3C4 \\uD504\\uB85C\\uD37C\\uD2F0\\uB85C \\uAD00\\uB9AC\")),\n    mdxType: \"Block\"\n  }), mdx(Block, {\n    id: \"jDzHR6HD-\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"useQuery\\uCC98\\uB7FC \\uC0AC\\uC6A9\")),\n    mdxType: \"Block\"\n  })), mdx(Block, {\n    id: \"Jic6TBuh7\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC544\\uC26C\\uC6B4 \\uC810\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"yg_GCVcPb\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"requiredResources\\uB97C Page \\uB2E8\\uC5D0\\uC11C \\uBAA8\\uB450 \\uC778\\uC9C0\\uD558\\uACE0 \\uC788\\uC5B4\\uC57C \\uD568\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"8VpbwEXqO\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"props drilling\\uCC98\\uB7FC \\uBAA8\\uB4E0 \\uC0C1\\uC704 \\uCEF4\\uD3EC\\uB10C\\uD2B8\\uAC00 \\uC778\\uC9C0\\uD574\\uC57C \\uD55C\\uB2E4\\uB294 \\uBB38\\uC81C\\uB294 \\uB9C9\\uC558\\uC9C0\\uB9CC \\uC5EC\\uC804\\uD788 Page\\uB294 \\uC54C\\uACE0 \\uC788\\uC5B4\\uC57C \\uD568\")),\n    mdxType: \"Block\"\n  }))), mdx(Block, {\n    id: \"U8s3sLgiK\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/React\",\n      \"title\": \"React\",\n      \"className\": \" internal-link\"\n    }, \"React\"), \" Server Components\\uAC00 \\uC774 \\uBB38\\uC81C\\uB97C \\uD574\\uACB0\\uD574\\uC8FC\\uB9AC\\uB77C \\uAE30\\uB300\\uD558\\uACE0 \\uACC4\\uC2E0 \\uB4EF\")),\n    mdxType: \"Block\"\n  })));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"2339c9ba-f9cf-5c40-bd7d-54879dca5840","string":"[[NextJS]]를 통해 구현","fields":{"parentPage":{"title":"SLASH 22","fields":{"slug":"/SLASH-22"}},"slug":"/MvqZcZVLW"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"qUmPCgDae\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/NextJS\",\n      \"title\": \"NextJS\",\n      \"className\": \" internal-link\"\n    }, \"NextJS\"), \"\\uC5D0\\uC11C \\uC774\\uB7EC\\uD55C \\uAC12\\uC744 \", mdx(\"inlineCode\", {\n      parentName: \"p\"\n    }, \"NEXT_PUBLIC_\"), \" prefix\\uB85C \\uAD6C\\uBD84\\uD558\\uB294 \\uAC83\\uACFC\\uB294 \\uB300\\uC870\\uC801\\uC774\\uB2E4.\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"fb7c38ea-5b07-5b41-9990-f325b68fb9bb","string":"[[NextJS]]에서 이러한 값을 `NEXT_PUBLIC_` prefix로 구분하는 것과는 대조적이다.","fields":{"parentPage":{"title":"June 7th, 2022","fields":{"slug":"/June-7th-2022"}},"slug":"/qUmPCgDae"}}}]},"fields":{"slug":"/NextJS"}}},"pageContext":{"id":"8fd8ced4-bbaa-5ea5-993f-f73a8ee27fe4"}},"staticQueryHashes":["2131059104","2221750479","2468095761"]}