Docz: fontawesome ์•„์ด์ฝ˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Œ

์— ๋งŒ๋“  2018๋…„ 07์›” 04์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: doczjs/docz

๋ฒ„๊ทธ ์‹ ๊ณ 

docz dev๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ์ฝ˜์†” ์—์ด ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Module build failed (from ./node_modules/happypack/loader.js):
TypeError: Cannot read property 'name' of undefined
    at C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:425:27
    at Array.filter (<anonymous>)
    at getTextValueOfFunctionProperty (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:422:10)
    at computeComponentName (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:446:32)
    at Parser.getComponentInfo (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:117:33)
    at C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:73:57
    at Array.map (<anonymous>)
    at C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:73:22
    at Array.reduce (<anonymous>)
    at Object.parse (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript\lib\parser.js:66:18)
    at Object.processResource (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript-loader\dist\loader.js:69:32)
    at Object.loader (C:\fenbka\www\electron-app\node_modules\react-docgen-typescript-loader\dist\loader.js:15:41)
    at applySyncOrAsync (C:\fenbka\www\electron-app\node_modules\happypack\lib\applyLoaders.js:350:21)
    at apply (C:\fenbka\www\electron-app\node_modules\happypack\lib\applyLoaders.js:277:5)
    at C:\fenbka\www\electron-app\node_modules\happypack\lib\applyLoaders.js:135:7
    at applyPitchLoader (C:\fenbka\www\electron-app\node_modules\happypack\lib\applyLoaders.js:188:14)

 @ ./src/renderer/ui/Button/Button.mdx 4:0-37 37:25-31
 @ ./.docz/app/imports.js
 @ ./.docz/app/index.jsx
 @ multi ./node_modules/babel-polyfill/lib/index.js ./.docz/app/index.jsx

Fontawesome ์•„์ด์ฝ˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Š” ์ดˆ๊ธฐํ™” ๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

Button.tsx

import * as React from "react";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import * as fontawesome from "@fortawesome/fontawesome";

import * as faSun from "@fortawesome/fontawesome-pro-solid/faSun";

fontawesome.library.add(faSun);
export interface ButtonProps {}
export interface ButtonState {}

export class Button extends React.Component<ButtonProps, ButtonState> {
    render() {
        return (
            <button>
                <FontAwesomeIcon icon="sun" />
                {this.props.children}
            </button>
        );
    }
}

Button.mdx

name: Button
menu: Components
---

import { Playground, PropsTable } from "docz";
import { Button } from "./NewButton";

## Basic usage

<Playground>
  <Button>test</Button>
</Playground>

์ข…์†์„ฑ

    "dependencies": {
        "@fortawesome/fontawesome": "^1.1.8",
        "@fortawesome/fontawesome-pro-light": "^5.0.13",
        "@fortawesome/fontawesome-pro-regular": "^5.0.13",
        "@fortawesome/fontawesome-pro-solid": "^5.0.13",
        "@fortawesome/fontawesome-svg-core": "^1.2.0-14",
        "@fortawesome/free-solid-svg-icons": "^5.1.0-11",
        "@fortawesome/react-fontawesome": "0.1.0-11",
        "@reach/router": "^1.1.1",
        "npm": "^6.1.0",
        "react": "^16.4.1",
        "react-dom": "^16.4.1",
        "styled-components": "^3.3.3"
    },
    "devDependencies": {
        "@types/node": "^10.5.1",
        "@types/react": "^16.4.6",
        "@types/react-dom": "^16.0.6",
        "@types/react-fontawesome": "^1.6.3",
        "docz": "^0.4.0",
        "docz-plugin-babel6": "^0.5.1",
        "electron": "^2.0.3",
        "electron-react-devtools": "^0.5.3",
        "file-loader": "^1.1.11",
        "html-webpack-plugin": "^3.2.0",
        "ts-loader": "^4.4.2",
        "typescript": "^2.9.2",
        "typescript-styled-plugin": "^0.8.1",
        "webpack": "^4.14.0",
        "webpack-cli": "^3.0.8",
        "webpack-dev-server": "^3.1.4"
    }

ํ™˜๊ฒฝ

  • ์šด์˜์ฒด์ œ : [Windows 10]
  • ๋…ธ๋“œ / npm ๋ฒ„์ „ : [๋…ธ๋“œ 8 / npm 5]

๋ชจ๋“  3 ๋Œ“๊ธ€

๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ•˜์ง€ ์•Š์•˜๋‹ค

@fenbka ๋˜๋Š” @zicodeng ์˜ค๋ฅ˜๋ฅผ ์žฌํ˜„ํ•˜๋ ค๋ฉด ์ €์žฅ์†Œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ

์‘๋‹ต์ด ์—†์–ด ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰