dotnet fable yarn-start
์์ค ํ์ผ์ด ๋ณ๊ฒฝ๋ ๋๋ง๋ค ์ ์ฒด ์์ค๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ์ปดํ์ผํฉ๋๋ค.
์๋ฌด ์ฐํ ํ๋ก์ ํธ๋ฅผ ๊ฐ์ ธ ์์ dotnet fable yarn-start๋ฅผ ์์ํ์ญ์์ค.
ํ๋์ ํ์ผ์ ์์ ํ๊ณ ์ ์ฅํฉ๋๋ค.
์์: ๋ณ๊ฒฝ๋ ํ์ผ(๋ฐ ์ข
์ ํ์ผ)๋ง ์ฌ์ปดํ์ผ๋ฉ๋๋ค.
์ค์ : ๋ชจ๋ ๊ฒ์ด ๋ค์ ์ปดํ์ผ๋ฉ๋๋ค.
dotnet fable --version
): 1.3.0, 1.3.1์๋ ํ์ธ์ @SCullman์ ๋๋ค! ์ฃ์กํฉ๋๋ค. ์ ๊ฒฝ์ฐ์๋ ํธ์ง๋ ํ์ผ๊ณผ ์ข ์ ํ์ผ๋ง ์ฌ์ปดํ์ผ๋๊ณ ์์ผ๋ฏ๋ก ์ด๋ฅผ ์ฌํํ ์ ์์ต๋๋ค. ์ด๊ฒ์ ํ ์คํธํ ์ ์ฅ์๋ ์์ถ ํ๋ก์ ํธ๊ฐ ์์ต๋๊น?
@alfonsogarciacaro Strange, ๋ค๋ฅธ ์ฌ๋๋ค๋ ์ค๋ ์์นจ gitter ์์ ๋์ผํ ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ํ์ต๋๋ค. ์ํ ํ๋ก์ ํธ๋ก ์ฌํํ ์ ์๋์ง ํ์ธํ๊ฒ ์ต๋๋ค.
์ฌํ ๋จ๊ณ:
dotnet new fable-elmish-react
.paket\paket update
yarn
cd src
dotnet restore
dotnet fable yarn-start
๊ทธ๋ฐ ๋ค์ home/view.fs๋ฅผ ํฐ์นํ๋ฉด:
@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๋ก ๋ค์ด๊ทธ๋ ์ด๋ํด์ผ ํ๋์?
๊ธฐ๋ณธ์ ์ผ๋ก ์๋ํ๋ ๋ฐ ์ฌ์ฉ๋์๋ ์ปค๋ฐ์์ ์ค๋ ์๋์ด ์ค์ง๋์์ต๋๋ค.
ํ , 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๊ฐ ์๋ ์ถ์ ์์ํ ์ ์์ต๋๋ค :)
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ข์, ์ฌ๊ธฐ ๋ด ๋ฐ๊ฒฌ์ด ์์ต๋๋ค. ๋ฌธ์ ๋ Webpack์ด ์ข ์์ฑ์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ์ต๋๋ค.
src/Home/View.fs
์ด์ ์ @SCullman์ด ํ์ํ ๋จ์์์src App.fs
์ ์ข ์์ฑ ์ผ๋กํ๋ก์ ํธ์ ๋ง์ง๋ง ํ์ผ์ด๋ฏ๋ก ๋ถ๋ช ํ App.fs์๋ ๋ ๋ง์ ์ข ์์ฑ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ Webpack์ ๊ทธ๊ฒ๋ค์ ๋ชจ๋ ์ฌ์ปดํ์ผํ๊ณ ์์ง๋ง ๋ถ๋ช ํ Windows์์๋ง ๊ฐ๋ฅํฉ๋๋ค . ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ๋ณด๋ ค๋ฉด ์ด๊ฒ์ Webpack ํ์ ๋ณด๊ณ ํด์ผ ํฉ๋๋ค.
๊ทธ ๋์
extra.ignoreDependencies
์ต์ ์ ์ฌ์ฉํ์ฌ ์ข ์์ฑ์ ์ตํธ์์ํ ์ ์๋๋ก Fable-loader 1.1.5๋ฅผ ๊ฒ์ํ์ต๋๋ค. ๋จ์ ์ ์ ์ ํ ์๋ฃจ์ ์ ์ฐพ์ ์ ์์ ๋๊น์ง ์ฌ์ปดํ์ผ์ด ํ์ํ ๊ฒฝ์ฐ ์ข ์ ํ์ผ์์ ์๋ ๋ณ๊ฒฝ(๊ณต๋ฐฑ ์ถ๊ฐ์ ๊ฐ์)์ ์ํํด์ผ ํ์ง๋ง ์ต์ํ ๊ฐ์์๋ ํจ์ฌ ๋นจ๋ผ์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค. ์์: