• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

antd 작동되지않아서 질문올립니다

20.07.01 00:59 작성 조회수 132

0

안녕하세요 제로초님 이번에 영상을 보고 typescript로 한번 바꾸어보려고 시도중인데

app.tsx
import 'antd/dist/antd.css';
import React, { Component } from "react";
import AppLayout from '../components/AppLayout'
import Head from 'next/head';

const TypeBird=({Component}:{Component:React.ReactType})=>{//Component는 any가 맞나?
  return (
    <>
      <Head>
        <meta charSet="utf-8" />
        <title>TypeBird</title>
      </Head>
      <AppLayout>
        <Component />
      </AppLayout>
    </>
  );
}

export default TypeBird;
AppLayout.tsx
import React, { ReactNode } from 'react';
import Link from 'next/link';
import {Menufrom 'antd/lib';


const AppLayout:React.FC=({children}:{children:ReactNode})=>{//children을 사용하여서 React.FC를 사용하였다.
return (
  <div>
    <Menu mode="horizontal">
      <Menu.Item>
        <Link href="/">
          <a>타입버드</a>
        </Link>
      </Menu.Item>
      <Menu.Item>
        <Link href="/profile">
          <a>프로필</a>
        </Link>
      </Menu.Item>
      <Menu.Item>
        <Link href="/signup">
          <a>회원가입</a>
        </Link>
      </Menu.Item>
    </Menu>
    {children}
  </div>
);
}
export default AppLayout;
이렇게 작성하였더니
next-dev.js:48 Error was not caught TypeError: Cannot read property 'parentNode' of null at Object.push../node_modules/antd/dist/antd.css.options.insert (antd.css?5e0f:14) at insertStyleElement (injectStylesIntoStyleTag.js:109) at addStyle (injectStylesIntoStyleTag.js:208) at modulesToDom (injectStylesIntoStyleTag.js:81) at push../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js.module.exports (injectStylesIntoStyleTag.js:239) at Object../node_modules/antd/dist/antd.css (antd.css?5e0f:29) at __webpack_require__ (bootstrap:862) at fn (bootstrap:150) at Module.<anonymous> (module.js:22) at Module../pages/_app.tsx (_app.tsx:20) at __webpack_require__ (bootstrap:862) at fn (bootstrap:150) at next-client-pages-loader.js:5 at register (page-loader.js:278) at PageLoader.registerPage (page-loader.js:307) at Array.register [as push] (index.js:54) at Object../node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?page=%2F_app&absolutePagePath=private-next-pages%2F_app.tsx!./ (next-client-pages-loader.js:2) at __webpack_require__ (bootstrap:862) at fn (bootstrap:150) at Object.0 (_app.tsx:20) at __webpack_require__ (bootstrap:862) at checkDeferredModules (bootstrap:45) at Array.webpackJsonpCallback [as push] (bootstrap:32) at _app.js?ts=1593532548146:1
안녕하세요 제로초님 이번에 영상을 보고 typescript로 한번 바꾸어보려고 시도중인데
 
app.tsx
import 'antd/dist/antd.css';
import React, { Component } from "react";
import AppLayout from '../components/AppLayout'
import Head from 'next/head';
 
const TypeBird=({Component}:{Component:React.ReactType})=>{//Component는 any가 맞나?
return (
<>
<Head>
<meta charSet="utf-8" />
<title>TypeBird</title>
</Head>
<AppLayout>
<Component />
</AppLayout>
</>
);
}
 
export default TypeBird;
 
AppLayout.tsx
import React, { ReactNode } from 'react';
import Link from 'next/link';
import {Menu} from 'antd/lib';
 
 
const AppLayout:React.FC=({children}:{children:ReactNode})=>{//children을 사용하여서 React.FC를 사용하였다.
return (
<div>
<Menu mode="horizontal">
<Menu.Item>
<Link href="/">
<a>타입버드</a>
</Link>
</Menu.Item>
<Menu.Item>
<Link href="/profile">
<a>프로필</a>
</Link>
</Menu.Item>
<Menu.Item>
<Link href="/signup">
<a>회원가입</a>
</Link>
</Menu.Item>
</Menu>
{children}
</div>
);
}
export default AppLayout;
 
이렇게 작성하였더니
next-dev.js:48 Error was not caught TypeError: Cannot read property 'parentNode' of null
at Object.push../node_modules/antd/dist/antd.css.options.insert (antd.css?5e0f:14)
at insertStyleElement (injectStylesIntoStyleTag.js:109)
at addStyle (injectStylesIntoStyleTag.js:208)
at modulesToDom (injectStylesIntoStyleTag.js:81)
at push../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js.module.exports (injectStylesIntoStyleTag.js:239)
at Object../node_modules/antd/dist/antd.css (antd.css?5e0f:29)
at __webpack_require__ (bootstrap:862)
at fn (bootstrap:150)
at Module.<anonymous> (module.js:22)
at Module../pages/_app.tsx (_app.tsx:20)
at __webpack_require__ (bootstrap:862)
at fn (bootstrap:150)
at next-client-pages-loader.js:5
at register (page-loader.js:278)
at PageLoader.registerPage (page-loader.js:307)
at Array.register [as push] (index.js:54)
at Object../node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?page=%2F_app&absolutePagePath=private-next-pages%2F_app.tsx!./ (next-client-pages-loader.js:2)
at __webpack_require__ (bootstrap:862)
at fn (bootstrap:150)
at Object.0 (_app.tsx:20)
at __webpack_require__ (bootstrap:862)
at checkDeferredModules (bootstrap:45)
at Array.webpackJsonpCallback [as push] (bootstrap:32)
at _app.js?ts=1593532548146:1
 
이런 에러가 나와서 질문 올립니다..antd 타입에러인 거같은데 무엇이 문제인지 자세히 모르겟어서 질문올립니다

답변 1

답변을 작성해보세요.

0

import {Menufrom 'antd/lib'; 대신 from 'antd' 하세요~