#.net-core #f# #fable-f#
#.net-core #f# #басня-f#
Вопрос:
Я пытался использовать System.Drawing.Color
в своем приложении Fable преобразование a a Color
в простую rgba
строку css:
module Color =
let rgbaString (color: System.Drawing.Color) =
let alpha = float color.A / 255.0
String.Format("rgba({0}, {1}, {2}, {3})", color.R, color.G, color.B, alpha)
К сожалению, компилятор Fable выдает ошибку, подобную приведенной ниже, для значений r, g, b и alpha:
ERROR in ./src/App/App.fs
Module Error (from ./node_modules/fable-loader/index.js):
/everybodykurts/MyApp/src/App/App.fs(13,50): (13,57) error FABLE: Cannot resolve System.Drawing.Color.get_R
@ ./src/App/App.fsproj 1:0-25 1:0-25
Я пытался использовать расширения типа F # для добавления get_R
R()
метода и System.Drawing.Color
, но, похоже, это не работает.
type System.Drawing.Color with
member this.R() = this.R
member this.G() = this.G
member this.B() = this.B
member this.A() = this.A
Чего мне не хватает? Спасибо за любую помощь.
Ответ №1:
Fable — это компилятор F # для javascript. Он может скомпилировать большую часть F #, но очень мало .Net BCL (библиотека базовых классов).
Он просто не знает, что System.Drawing.Color
это такое.
Комментарии:
1. Правда, вот полный список того, что из BCL поддерживается в Fable.