<p>Fable ๋ฐ๋ชฌ์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ „์ฒด ์†Œ์Šค๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๊ณ  ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค.</p>

์— ๋งŒ๋“  2017๋…„ 11์›” 21์ผ  ยท  49์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: fable-compiler/Fable

์„ค๋ช…

dotnet fable yarn-start ์†Œ์Šค ํŒŒ์ผ์ด ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์ „์ฒด ์†Œ์Šค๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๊ณ  ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค.

์žฌํ˜„ ์ฝ”๋“œ

์•„๋ฌด ์šฐํ™” ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ€์ ธ ์™€์„œ dotnet fable yarn-start๋ฅผ ์‹œ์ž‘ํ•˜์‹ญ์‹œ์˜ค.
ํ•˜๋‚˜์˜ ํŒŒ์ผ์„ ์ˆ˜์ •ํ•˜๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ƒ ๋ฐ ์‹ค์ œ ๊ฒฐ๊ณผ

์˜ˆ์ƒ: ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ(๋ฐ ์ข…์† ํŒŒ์ผ)๋งŒ ์žฌ์ปดํŒŒ์ผ๋ฉ๋‹ˆ๋‹ค.
์‹ค์ œ: ๋ชจ๋“  ๊ฒƒ์ด ๋‹ค์‹œ ์ปดํŒŒ์ผ๋ฉ๋‹ˆ๋‹ค.

๊ด€๋ จ ์ •๋ณด

  • ์šฐํ™” ๋ฒ„์ „( dotnet fable --version ): 1.3.0, 1.3.1

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ข‹์•„, ์—ฌ๊ธฐ ๋‚ด ๋ฐœ๊ฒฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” Webpack์ด ์ข…์†์„ฑ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. src/Home/View.fs ์ด์ „์— @SCullman์ด ํ‘œ์‹œํ•œ ๋‹จ์ˆœ์—์„œ src App.fs ์˜ ์ข…์†์„ฑ ์œผ๋กœ

ํ”„๋กœ์ ํŠธ์˜ ๋งˆ์ง€๋ง‰ ํŒŒ์ผ์ด๋ฏ€๋กœ ๋ถ„๋ช…ํžˆ App.fs์—๋Š” ๋” ๋งŽ์€ ์ข…์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Webpack์€ ๊ทธ๊ฒƒ๋“ค์„ ๋ชจ๋‘ ์žฌ์ปดํŒŒ์ผํ•˜๊ณ  ์žˆ์ง€๋งŒ ๋ถ„๋ช…ํžˆ Windows์—์„œ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค . ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ๋ณด๋ ค๋ฉด ์ด๊ฒƒ์„ Webpack ํŒ€์— ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ ๋™์•ˆ extra.ignoreDependencies ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ข…์†์„ฑ์„ ์˜ตํŠธ์•„์›ƒํ•  ์ˆ˜ ์žˆ๋„๋ก Fable-loader 1.1.5๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์ ์€ ์ ์ ˆํ•œ ์†”๋ฃจ์…˜์„ ์ฐพ์„ ์ˆ˜ ์žˆ์„ ๋•Œ๊นŒ์ง€ ์žฌ์ปดํŒŒ์ผ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ข…์† ํŒŒ์ผ์—์„œ ์ˆ˜๋™ ๋ณ€๊ฒฝ(๊ณต๋ฐฑ ์ถ”๊ฐ€์™€ ๊ฐ™์€)์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜์ง€๋งŒ ์ตœ์†Œํ•œ ๊ฐ์‹œ์ž๋Š” ํ›จ์”ฌ ๋นจ๋ผ์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ์‹œ:

    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"],
                        extra: { ignoreDependencies: true }
                    }
                }
            },

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

์•ˆ๋…•ํ•˜์„ธ์š” @SCullman์ž…๋‹ˆ๋‹ค! ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ œ ๊ฒฝ์šฐ์—๋Š” ํŽธ์ง‘๋œ ํŒŒ์ผ๊ณผ ์ข…์† ํŒŒ์ผ๋งŒ ์žฌ์ปดํŒŒ์ผ๋˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ด๋ฅผ ์žฌํ˜„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ํ…Œ์ŠคํŠธํ•  ์ €์žฅ์†Œ๋‚˜ ์••์ถ• ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@alfonsogarciacaro Strange, ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๋„ ์˜ค๋Š˜ ์•„์นจ gitter ์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒ˜ํ”Œ ํ”„๋กœ์ ํŠธ๋กœ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์žฌํ˜„ ๋‹จ๊ณ„:

dotnet new fable-elmish-react
.paket\paket update 
yarn
cd src
dotnet restore
dotnet fable yarn-start

๊ทธ๋Ÿฐ ๋‹ค์Œ home/view.fs๋ฅผ ํ„ฐ์น˜ํ•˜๋ฉด:
image

@SCullman :+1: ํŽ˜์ด๋ธ” ๋กœ๋”๋„ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ๊ณ„์— yarn upgrade fable-loader (๋˜๋Š” ๋ชจ๋“  npm ํŒจํ‚ค์ง€๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด yarn upgrade ๋งŒ ์ถ”๊ฐ€)๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์œ„์—์„œ ๋‹ค์‹œ ์‹œ๋„ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋‹ค๋ฅธ ์ปดํ“จํ„ฐ์—์„œ ์ƒˆ๋กœ์šด ์‹œ๋„:

dotnet new fable-elmish-react
.paket\paket update 
yarn install
yarn upgrade
cd src
dotnet restore
dotnet fable yarn-start

๊ฐ™์€ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ๋ณธ๋‹ค.

์ด์ƒํ•ด, ๋‚˜๋Š” ์žฌํ˜„ํ•  ์ˆ˜ ์—†๋‹ค... ๐Ÿ˜• ์ด ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? @MangelMaxime @forki

๋‘˜ ๋‹ค ์žฌํ˜„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. @SCullman ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ Home\View.fs ํŒŒ์ผ์„ ํŽธ์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š”์ด ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ๋‹ค :

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
16:15-19 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
172:15-25 "export 'defaultArg' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
185:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
188:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj
webpack: Compiled with warnings.
webpack: Compiling...
fable: Compiled src\Home\View.fs
Hash: 64fb89640a7e19c1f870
Version: webpack 3.8.1
Time: 2227ms
                                   Asset      Size  Chunks                    Chunk Names
                               bundle.js      2 MB       0  [emitted]  [big]  main
    0.b7f14501e6aa67373323.hot-update.js   1.77 kB       0  [emitted]         main
    b7f14501e6aa67373323.hot-update.json  43 bytes          [emitted]
                           bundle.js.map   2.19 MB       0  [emitted]         main
0.b7f14501e6aa67373323.hot-update.js.map   1.01 kB       0  [emitted]         main
[./node_modules/webpack/hot ^\.\/log$] (webpack)/hot nonrecursive ^\.\/log$ 170 bytes {0} [built]
[./src/Home/View.fs] ./src/Home/View.fs 632 bytes {0} [built]
    + 390 hidden modules

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
16:15-19 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
172:15-25 "export 'defaultArg' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
185:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
188:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj
webpack: Compiled with warnings.

์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

webpack: Compiling...
fable: Compiled src\Home\View.fs

option ์œ ํ˜•์„ ์ฒ˜๋ฆฌํ•˜๋Š” Fable์˜ ์ƒˆ๋กœ์šด ๋ฐฉ์‹์œผ๋กœ ์ธํ•ด export 'some' was not found in ์— ๋Œ€ํ•œ ๊ฒฝ๊ณ ๊ฐ€ ์˜์‹ฌ๋ฉ๋‹ˆ๋‹ค. @alfonsogarciacaro ๋งž์•„์š” ๊ทธ๋ ‡๋‹ค๋ฉด elmish ์ €์žฅ์†Œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์‚ฌ๋ผ์ง€๊ธฐ์— ์ถฉ๋ถ„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋” ํฐ ํ”„๋กœ์ ํŠธ๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

์œ„์˜ @SCullman ๊ณผ ๋™์ผํ•˜๊ฒŒ ์‹œ๋„ํ•˜๊ณ 

webpack: Compiled with warnings.
webpack: Compiling...
Parsing ./Home/View.fs...
Parsing ./App.fs...
fable: Compiled src\App.fs
Parsing ./Counter/View.fs...
Parsing ./Types.fs...
Parsing ./Info/View.fs...
Parsing ./Navbar/View.fs...
fable: Compiled src\Types.fs
fable: Compiled src\Counter\View.fs
fable: Compiled src\Info\View.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish/1.0.0/fable/program.fs...
fable: Compiled src\Navbar\View.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs...
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.react\1.0.0\fable\react.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish\1.0.0\fable\program.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.debugger\1.0.0\fable\debugger.fs
Parsing ./State.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.browser\1.0.0\fable\navigation.fs
Parsing ./Home/View.fs...
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.react/1.0.0/fable/common.fs...
fable: Compiled src\State.fs
fable: Compiled src\Home\View.fs
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.react\1.0.0\fable\common.fs
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.browser\1.0.0\fable\parser.fs

Home/View.fs๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ

yarn info fable-loader ๊ฐ€) version: '1.1.4',

๊ท€ํ•˜์˜ ๋‹ท๋„ท ๋ฒ„์ „์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์œˆ๋„์šฐ์—์„œ 2.0.2

๋‚ด Linux ์ƒ์ž(dotnet 2.0.0 ํฌํ•จ)์—์„œ ์‹œ๋„ํ–ˆ๋Š”๋ฐ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” Windows 2.0.3์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋ฏธ์ณค๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€๋‚œ ๋ฉฐ์น  ๋™์•ˆ 2.0.0, 2.0.1, 2.0.2, 2.0.3 ์‚ฌ์ด์— ๋งŽ์€ ๋‹ค๋ฅธ ๋™์ž‘์ด ์žˆ์Šต๋‹ˆ๋‹ค...

Windows์—์„œ 2.0.3์„ ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

ํŽธ์ง‘ : ์ด๊ฒƒ์ด dotnet ๋ฒ„์ „๊ณผ ๊ด€๋ จ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ...

Windows 10(1709)์—์„œ 2.0.3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ
์‹ค 1.3.2
๋…ธ๋“œ 8.6.0/9.2.0

์—ฌ์ „ํžˆ ๊ฐ™์€...

์ง‘์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ํ•ด๋‹น ์ปดํ“จํ„ฐ๋ฅผ dotnet2.0.3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ๋™์ผํ•œ ๋™์ž‘์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. dotnet 2.0.3๊ณผ ๋™์ผํ•œ ๋ฌธ์ œ

์ €๋„ ์ด ๋ฌธ์ œ๋ฅผ ๋ด…๋‹ˆ๋‹ค. ๋‹ท๋„ท 2.0.3

์ฐธ๊ณ ๋กœ dotnet 2.0.3์„ ์‚ฌ์šฉํ•˜๋Š” Linux์—์„œ ์–ป์€ ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

webpack: Compiling...
Parsing ./Home/View.fs...
Parsing ./App.fs...
fable: Compiled src/App.fs
Parsing ./Home/View.fs...
fable: Compiled src/Home/View.fs

์ฐฝ ์•„๋ž˜์— ์ด์ „๋ณด๋‹ค ์•ฝ๊ฐ„ ๋” ๋งŽ์€ ์ค„์ด ์žˆ์ง€๋งŒ ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ์–ด๋”˜๊ฐ€์— global.json ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์—ฌ๋Ÿฌ๋ถ„ ์‹œ์Šคํ…œ ์–ด๋”˜๊ฐ€์— global.json ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ˆ

{
    "sdk": {
        "version": "2.0.3"
    }
}

์—ฌ๋Ÿฌ๋ถ„ ์‹œ์Šคํ…œ ์–ด๋”˜๊ฐ€์— global.json ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์•„๋‹ˆ์š”

dotnet SDK 2.0.0์ด ์„ค์น˜๋œ macOS๋ฅผ ์‚ฌ์šฉ ์ค‘์ด๋ฉฐ ๋ฌธ์ œ๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ #1246์€ ๋ฌธ์ œ๊ฐ€ 1.3.0 ๋ฒ ํƒ€์—์„œ 1.3.1๊นŒ์ง€ ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ๋ฐํ˜”์ง€๋งŒ ํ•ด๋‹น ๋ฒ„์ „ ์‚ฌ์ด์—์„œ ๋”ํ‹ฐ ํŒŒ์ผ์„ ๊ฐ์ง€ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์•„์•„!

ํ , Fable 1.3์€ System.IO.File.GetLastWriteTime ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋”ํ‹ฐ ํŒŒ์ผ( source )์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋„ท์ฝ”์–ด ๋ฒ„์ „/ํ”Œ๋žซํผ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ๊นŒ์š”? @vasily-kirichenko @enricosada

@forki ๋Š” Fable์ด

@forki ๋Š” Fable์ด

"์ผ์„ ๋ฉˆ์ท„๋‹ค"๋Š” ๊ฒƒ์€ ๋ฌด์—‡์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ? 2.0.3์ด ์žˆ๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค(์žฌ์ปดํŒŒ์ผ ์ตœ์ ํ™” ์ œ์™ธ). 2.0.2๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•ด์•ผ ํ•˜๋‚˜์š”?

image

๊ธฐ๋ณธ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜์—ˆ๋˜ ์ปค๋ฐ‹์—์„œ ์˜ค๋Š˜ ์ž‘๋™์ด ์ค‘์ง€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํ , Fable 1.3์€ System.IO.File.GetLastWriteTime์„ ์‚ฌ์šฉํ•˜์—ฌ ๋”ํ‹ฐ ํŒŒ์ผ(์†Œ์Šค)์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.

FCS๊ฐ€ ์ตœ๊ทผ ๋ชจ๋“  ๊ณณ์—์„œ UTC ํƒ€์ž„์Šคํƒฌํ”„๋กœ ์ „ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

mhm ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. dotnet ๋ฒ„์ „์„ ์ „ํ™˜ํ•˜์—ฌ ํ•ด๊ฒฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๊ฒฐ๊ตญ 2.0.2์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ๋ณด๊ฒŒ ๋  ๊ฒƒ์ด๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‹จ์ง€ ๋ฌด์–ธ๊ฐ€์˜ "์‹ ์„ ํ•œ"์บ์‹œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@alfonsogarciacaro https://github.com/fable-compiler/Fable/blob/cda3ae8a97c538b783c961ccb7aa168d695b7b3c/src/dotnet/dotnet-fable/StateUtil.fs#.fs '๊ฐ€ ๋งˆ์ง€๋ง‰์œผ๋กœ "xxxx#.137์„ ์ž‘์„ฑํ•˜๊ธฐ ๋•Œ๋ฌธ์—"์— ๋กœ๊ทธ์ธ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? = xxxxx๊ฐ€ ํ”„๋กœ์ ํŠธ ํƒ€์ž„์Šคํƒฌํ”„ = xxxxx๋ณด๋‹ค ํฝ๋‹ˆ๋‹ค"? (ํ•˜์ง€๋งŒ project.TimeStamp ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.)

Windows์—์„œ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(dotnet 2.0.0 ๋ฐ 2.0.3 ๋ชจ๋‘). @vasily-kirichenko๋ฅผ ์ œ์•ˆํ•œ ๋Œ€๋กœ ๋กœ๊ทธ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์œผ๋ฉฐ ๋กœ์ปฌ ํ…Œ์ŠคํŠธ์—์„œ ๋ฌธ์ œ๊ฐ€ ํ•ด๋‹น ๋ผ์ธ์— ์—†๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์œผ๋ฏ€๋กœ ๋‹ค๋ฅธ ์–ด๋”˜๊ฐ€์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ ํ™•์ธ์ค‘๐Ÿ‘

@alfonsogarciacaro ๋Œ€๋‹จํ•ด! ์šฐ๋ฆฌ๋Š” ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ํ†ต์€ ์—„์ฒญ๋‚ฉ๋‹ˆ๋‹ค :)

์ข‹์•„, ์—ฌ๊ธฐ ๋‚ด ๋ฐœ๊ฒฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” Webpack์ด ์ข…์†์„ฑ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. src/Home/View.fs ์ด์ „์— @SCullman์ด ํ‘œ์‹œํ•œ ๋‹จ์ˆœ์—์„œ src App.fs ์˜ ์ข…์†์„ฑ ์œผ๋กœ

ํ”„๋กœ์ ํŠธ์˜ ๋งˆ์ง€๋ง‰ ํŒŒ์ผ์ด๋ฏ€๋กœ ๋ถ„๋ช…ํžˆ App.fs์—๋Š” ๋” ๋งŽ์€ ์ข…์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Webpack์€ ๊ทธ๊ฒƒ๋“ค์„ ๋ชจ๋‘ ์žฌ์ปดํŒŒ์ผํ•˜๊ณ  ์žˆ์ง€๋งŒ ๋ถ„๋ช…ํžˆ Windows์—์„œ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค . ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ๋ณด๋ ค๋ฉด ์ด๊ฒƒ์„ Webpack ํŒ€์— ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ ๋™์•ˆ extra.ignoreDependencies ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ข…์†์„ฑ์„ ์˜ตํŠธ์•„์›ƒํ•  ์ˆ˜ ์žˆ๋„๋ก Fable-loader 1.1.5๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์ ์€ ์ ์ ˆํ•œ ์†”๋ฃจ์…˜์„ ์ฐพ์„ ์ˆ˜ ์žˆ์„ ๋•Œ๊นŒ์ง€ ์žฌ์ปดํŒŒ์ผ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ข…์† ํŒŒ์ผ์—์„œ ์ˆ˜๋™ ๋ณ€๊ฒฝ(๊ณต๋ฐฑ ์ถ”๊ฐ€์™€ ๊ฐ™์€)์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜์ง€๋งŒ ์ตœ์†Œํ•œ ๊ฐ์‹œ์ž๋Š” ํ›จ์”ฌ ๋นจ๋ผ์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ์‹œ:

    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"],
                        extra: { ignoreDependencies: true }
                    }
                }
            },

@alfonsogarciacaro ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. 2์ดˆ ํ”ผ๋“œ๋ฐฑ์œผ๋กœ ๋Œ์•„์™”์Šต๋‹ˆ๋‹ค :)

dotnet-fable 1.3.2๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธํ•˜์—ฌ ์‚ฌ์šฉํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์ด ๋ฒ„์ „์€ ์ข…์†์„ฑ์„ JS ํด๋ผ์ด์–ธํŠธ๋กœ ๋ณด๋‚ด์ง€ ์•Š์ง€๋งŒ(๋”ฐ๋ผ์„œ extra.ignoreDependencies ์˜ต์…˜๋„ ํ•„์š”ํ•˜์ง€ ์•Š์Œ) ๋ฐ๋ชฌ์€ ์ข…์†์„ฑ์„ ์œ ์ง€ํ•˜๊ณ  ๊ฐ์‹œ ์ปดํŒŒ์ผ์—์„œ ์ข…์† ํŒŒ์ผ์„ ๊ณ„์† ๋‹ค์‹œ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ Webpack์—์„œ ์˜ค๋ฅ˜๋ฅผ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค.

๋ณด๋„ˆ์Šค๋กœ ์ด๊ฒƒ์€ ์ข…์†์„ฑ(์˜๋„ํ•˜์ง€ ์•Š์€ ๋ง์žฅ๋‚œ) @forki ์— ๋Œ€ํ•ด ํด๋ผ์ด์–ธํŠธ์— ์˜์กดํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํŽ˜์ด๋ธ” ์Šคํ”Œ๋ฆฌํ„ฐ์—๋„ ๋„์›€์ด

BTW๋Š” @forki ์—๋„ 1.3.2๊ฐ€ Windows์—์„œ

๋” ํฐ ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๋” ๋งŽ๊ฑฐ๋‚˜ ์ ์€ ์ข…์†์„ฑ์„ ๊ฐ€์ง„ ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์ผ๋ถ€ ๋ณ€๊ฒฝ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋Œ€๋‹จํ•œ ์ง์—…. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

ํ•œ ์ปดํ“จํ„ฐ์—์„œ 2.0.3๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜ ๋‚˜์ค‘์— ๋‹ค๋ฅธ ํ•˜๋‚˜๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค

์˜ค์ „ 24.11.2017 08:10 schrieb "Stefan Cullmann" [email protected] :

๋” ํฐ ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์ผ๋ถ€ ๋ณ€๊ฒฝ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋” ๋งŽ๊ฑฐ๋‚˜ ๋” ์ ์€ ์ข…์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋Œ€๋‹จํ•œ ์ง์—…. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/fable-compiler/Fable/issues/1241#issuecomment-346757401 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AADgNMohglCrLNRcXVtu0d_YfzfGc3dZks5s5mvSgaJpZM4Ql5zA
.

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‚˜๋ฅผ ์œ„ํ•ด ์™„์ „ํžˆ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์‹ ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ํŒŒ์ผ:

<ItemGroup>
    <Compile Include="Global.fs" />
    <Compile Include="ElasticSearch\Common.fs" />
    <Compile Include="EsScratchPad\View.fs" />
    <Compile Include="Errors\Types.fs" />
    <Compile Include="Errors\Es.fs" />
    <Compile Include="Errors\State.fs" />
    <Compile Include="Errors\View.fs" />
    <Compile Include="Apps\Types.fs" />
    <Compile Include="Apps\State.fs" />
    <Compile Include="Apps\View.fs" />
    <Compile Include="Types.fs" />
    <Compile Include="State.fs" />
    <Compile Include="App.fs" />
  </ItemGroup>

Apps\View.fs ๋ณ€๊ฒฝํ•œ ํ›„ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

webpack: Compiling...
Parsing ./Apps/View.fs...
Parsing ./App.fs...
fable: Compiled src\App.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs...
Parsing ./EsScratchPad/View.fs...
Parsing ./Types.fs...
Parsing ./Errors/View.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs...
fable: Compiled src\Types.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs...
fable: Compiled src\EsScratchPad\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs...
Parsing ./State.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish\1.0.0\fable\program.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.react\1.0.0\fable\react.fs
Parsing ./Apps/View.fs...
Parsing ./ElasticSearch/Common.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Section.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Navbar.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Columns.fs...
fable: Compiled src\State.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Column.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.browser\1.0.0\fable\navigation.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Form.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.debugger\1.0.0\fable\debugger.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Button.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Common.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Columns.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Extra/FontAwesome.fs...
fable: Compiled src\Errors\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Icon.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Notification.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Section.fs
fable: Compiled src\ElasticSearch\Common.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/common.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Common.fs
Parsing ./Apps/State.fs...
Parsing ./Errors/State.fs...
fable: Compiled src\Apps\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.react\1.0.0\fable\common.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Message.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Table.fs...
Parsing ./Errors/Es.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Pagination.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Extra\FontAwesome.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Content.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.powerpack/1.3.1/fable/src/Fetch.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Menu.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Level.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Tag.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Column.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Notification.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Button.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Icon.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Level.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Tag.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Menu.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.powerpack\1.3.1\fable\src\Fetch.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Pagination.fs
fable: Compiled src\Errors\Es.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Content.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Form.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Table.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Message.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Panel.fs
fable: Compiled src\Errors\State.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Box.fs
fable: Compiled src\Apps\State.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.browser\1.0.0\fable\parser.fs
Hash: 3311826e924a74e32344
Version: webpack 3.8.1
Time: 3656ms
                                   Asset      Size  Chunks                    Chunk Names
                               bundle.js    2.7 MB       0  [emitted]  [big]  main
    0.42dbebdd1d8a29329817.hot-update.js   33.4 kB       0  [emitted]         main
    42dbebdd1d8a29329817.hot-update.json  43 bytes          [emitted]
                           bundle.js.map   2.55 MB       0  [emitted]         main
0.42dbebdd1d8a29329817.hot-update.js.map   9.24 kB       0  [emitted]         main
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs 4.73 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs 8.33 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs 8.99 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs 871 bytes {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs 8.33 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs 24.2 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs 10.3 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs 787 bytes {0} [built]
[./node_modules/webpack/hot ^\.\/log$] (webpack)/hot nonrecursive ^\.\/log$ 170 bytes {0} [built]
[./src/App.fs] ./src/App.fs 6.51 kB {0} [built]
[./src/Apps/View.fs] ./src/Apps/View.fs 9.28 kB {0} [built]
[./src/Errors/View.fs] ./src/Errors/View.fs 15.5 kB {0} [built]
[./src/EsScratchPad/View.fs] ./src/EsScratchPad/View.fs 8.99 kB {0} [built]
[./src/State.fs] ./src/State.fs 3.04 kB {0} [built]
[./src/Types.fs] ./src/Types.fs 2.72 kB {0} [built]
    + 400 hidden modules
webpack: Compiled successfully.

3.6์ดˆ๋Š” ๊ฝค ์ข‹์Šต๋‹ˆ๋‹ค(๊ทธ๋Ÿฌ๋‚˜ extra.ignoreDependencies - 1.7์ดˆ๋ณด๋‹ค ๋” ๊น๋‹ˆ๋‹ค).

@vasily-kirichenko ์ €๋„ ์ฒ˜์Œ์—๋Š” ๋˜‘๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ Paket deps๋ฅผ ๋‹ค์‹œ ์„ค์น˜ํ•˜๋ฉด ์ด์ œ ๋ชจ๋“  ๊ฒƒ์ด ์ •์ƒ์ž…๋‹ˆ๋‹ค.

์ด์ œ 10์ดˆ... :(

@์ด๋ฆฌ์›€ ์•„! paket install --force ?

๊ฐ™์€ ์‹œ๊ฐ„์— ๋„์›€์ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค :(

@vasily-kirichenko paket.lock์— 1.3.2๊ฐ€ ์žˆ๊ณ  dotnet fable --version ์‹คํ–‰ํ•  ๋•Œ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ํ•„์š”ํ•œ ๊ฒฝ์šฐ dotnet restore ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์ „์— obj ํด๋”๋ฅผ ์‚ญ์ œํ•˜์‹ญ์‹œ์˜ค.

๋‚ด webpack.config.js ๊ดœ์ฐฎ๋‚˜์š”?

var path = require("path");
var webpack = require("webpack");
var fableUtils = require("fable-utils");

function resolve(filePath) {
    return path.join(__dirname, filePath)
}

var babelOptions = fableUtils.resolveBabelOptions({
    presets: [["es2015", {"modules": false}]],
    plugins: [["transform-runtime", {
        "helpers": true,
        // We don't need the polyfills as we're already calling
        // cdn.polyfill.io/v2/polyfill.js in index.html
        "polyfill": false,
        "regenerator": false
    }]]
});

var isProduction = process.argv.indexOf("-p") >= 0;
console.log("Bundling for " + (isProduction ? "production" : "development") + "...");

module.exports = {
    devtool: "source-map",
    entry: resolve('./src/EsExplorer.fsproj'),
    output: {
        filename: 'bundle.js',
        path: resolve('./public'),
    },
    resolve: {
        modules: [
            "node_modules", resolve("./node_modules/")
        ]
    },
    devServer: {
        contentBase: resolve('./public'),
        port: 8080,
        hot: true,
        inline: true
    },
    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"]
                    }
                }
            },
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: 'babel-loader',
                    options: babelOptions
                },
            },
            {
                test: /\.sass$/,
                use: [
                    "style-loader",
                    "css-loader",
                    "sass-loader"
                ]
            }
        ]
    },
    plugins : isProduction ? [] : [
        new webpack.HotModuleReplacementPlugin(),
        new webpack.NamedModulesPlugin()
    ]
};

๋‚˜ ํ•œํ…Œ๋ณด๊ธฐ ์ข‹๋‹ค.

obj ๋ฐ dotnet restore ๋ฅผ ์‚ญ์ œํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ์ด์ œ 1.5์ดˆ์ž…๋‹ˆ๋‹ค. ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

๋งํ•  obj - ์ง€๊ธˆ์€ ์ •๋ง ๋งํ•  ์ผ์ด๊ตฐ์š”. ํ•ญ์ƒ ๋ฌธ์ œ

@forki dotnet ๋ฌธ์ œ์ธ๊ฐ€์š” ์•„๋‹ˆ๋ฉด ํŒจํ‚ท์ธ๊ฐ€์š”...?

๋‹ท๋„ท

๋˜ ๋‹ค๋ฅธ ์งˆ๋ฌธ: packet.dependencies ์—์„œ ๋ชจ๋“  prerelease ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋„ค, ํ’€๋งˆ๋ฅผ ์ œ์™ธํ•˜๊ณ  ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค :) @vasily-kirichenko

์•Œ์•˜์–ด ๊ณ ๋งˆ์›Œ. Fulma๊ฐ€ ์—†๋Š” ์‚ถ์€ ์ƒ์ƒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค :)

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