当我尝试使用webpack和babel-loader编译我的javascript时,我得到:( Babel版本6+)
Hash: f6a14faa8862d530512e
Version: webpack 1.12.3
Time: 96ms
     Asset     Size  Chunks             Chunk Names
backend.js  1.75 kB       0  [emitted]  main
backend.js.map  1.43 kB       0  [emitted]  main
chunk    {0} backend.js, backend.js.map (main) 28 bytes [rendered]
[0] multi main 28 bytes {0} [built] [1 error]
ERROR in The node API for `babel` has been moved to `babel-core`.
@ multi main
Patched!
Run Code Online (Sandbox Code Playgroud)
如何将节点API移动babel到babel-core?
作为练习,我正在尝试将map,length和filter编写为reduce函数.
func map<T>(array: [T], f: (T->T)) -> [T] {
    return array.reduce([]) {
        (var seed, value) in
        seed.append(f(value))
        return seed
    }
}
func length<T>(array: [T]) -> Int {
    return array.reduce(0){ (x,_) in x + 1 }
}
func filter<T>(array: [T], predicate: (T->Bool)) -> [T]{
    return array.reduce([]){
        (var seed, value) in
        if predicate(value){
            seed.append(value)
        }
        return seed
    }
}
Run Code Online (Sandbox Code Playgroud)
这是我可以用来将这些函数重写为reduce的最优雅的语法吗?第二个问题:map采用函数f:(T-> T)基本上类型说我只能返回T类型的东西,但如果我写的函数将类型T转换为Bool,或者和Int ...怎么做我做到了吗?好像地图不存在
是否可以通过graphql服务器结合中继和反应来验证具有不同角色的用户?
我环顾四周,找不到有关此主题的更多信息.
在我目前的设置中,具有不同角色的登录功能仍然通过传统的REST API ...(使用json web令牌'安全').
我正试图通过webpack-dev-middleware自动重新加载(没有热重载)一些JavaScript.
我的Express服务器的当前代码:
app.use(webpackDevMiddleware(compiler, {
    inline: true,
    noInfo: true,
    publicPath: config.output.publicPath,
    stats: {colors: true}
}));
Run Code Online (Sandbox Code Playgroud)
一切似乎运行良好,但当我改变一些东西时,我的浏览器不会自动重新加载(尽管webpack重建......).
我是否需要添加额外的条目以使用webpack-dev-middleware自动重新加载浏览器?
我在React元素中有这个代码:
require('../../Style/fonts/SomethingStrange.ttf')
Run Code Online (Sandbox Code Playgroud)
在我的Webpack.config中:
{ test: /\.(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/, 
      loader: 'file-loader?name=fonts/[name].[ext]' }
Run Code Online (Sandbox Code Playgroud)
问题:我的网页上没有字体...
Webpack不让我自动要求字体吗?我是否需要编程其他任何东西来加载字体?
我正在尝试编写一个将节点式回调函数转换为promises的简单函数,因此我可以将它们与async/await一起使用.
当前代码:
function toPromise(ctx, func, ...args) {
  let newPromise;
  args.push((err, res) => {
    newPromise = new Promise((resolve, reject)=> {
       if(err) reject(err);
       else{
        resolve(res) 
      };
     });
    });
   func.apply(ctx, args);
   return newPromise;
}
Run Code Online (Sandbox Code Playgroud)
示例用法:
const match = await toPromise(user, user.comparePassword, password);
//trying to avoid the following:
user.comparePassword(password, (err, res) => {
     ... });
Run Code Online (Sandbox Code Playgroud)
对于一些很棒的库来说,这可能没有任何意义,但我只是想把它编写为一个练习.
问题当然是匹配评估为未定义,显然在await语法行之后,promise得到解决.
知道如何解决这个问题吗?
我正在尝试谷歌闭包编译器作为webpack的替代品.目前我正在使用以下编译我的前端文件夹中的所有文件:
java -jar closure-compiler.jar --process_common_js_modules --js_output_file=static/out.js 'lib/js/src/frontend/*.js'"
Run Code Online (Sandbox Code Playgroud)
问题是其中一个文件需要React和ReactDOM.我收到以下错误:
lib/js/src/frontend/app.js:7: ERROR - Failed to load module "react"
var React    = require("react");
           ^^^^^^^^^^^^^^^^
lib/js/src/frontend/app.js:8: ERROR - Failed to load module "react-dom"
var ReactDom = require("react-dom");
           ^^^^^^^^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)
如何确保Google Closure Compiler查看node_modules以查找相关的第三方模块?
我正在学习如何解析简单的程序。
这是我的词法分析器。
{
open Parser
  exception SyntaxError of string
}
let white = [' ' '\t']+
let blank = ' '
let identifier = ['a'-'z']
rule token = parse
  | white {token lexbuf} (* skip whitespace *)
  | '-' { HYPHEN }
  | identifier {
    let buf = Buffer.create 64 in
    Buffer.add_string buf (Lexing.lexeme lexbuf);
    scan_string buf lexbuf;
    let content = (Buffer.contents  buf) in
    STRING(content)
  }
  | _ { raise (SyntaxError "Unknown stuff here") }
and scan_string buf = parse …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Lwt 编写一个终端应用程序。基本上,只要我的应用程序正在运行,我就需要使用 Lwt_io.read_line 来观察终端的输入。
有没有比以下(伪代码)更好的方法来在我的程序运行时实现某种循环?
while true do
  let _ = ignore (Lwt_main.run my_application)
done
Run Code Online (Sandbox Code Playgroud)
我不确定这是否是正确的方法。每次 my_application 中的所有线程完成时,Lwt_main.run 就会一次又一次地被调用...
Lwt 是否有其他或更好的方法来处理这个问题?
给定以下类型:
 type ('props,'state) reactInstance =
  {
  props: 'props;
  state: 'state;
  updater:
    'event .
      (('props,'state) reactInstance -> 'event -> 'state) ->
        ('props,'state) reactInstance -> 'event -> unit;}
Run Code Online (Sandbox Code Playgroud)
我正在努力实现:
let rec updater f instance event =
  let nextState = f instance event in
  let newInstance =
    { props; state = nextState; updater } in
  ()
let newInstance =
  { props; state = (reactClass.getInitialState ()); updater }
Run Code Online (Sandbox Code Playgroud)
我给了更新程序一个类似 forall 的类型定义。我的主要动机是因为更新程序将被事件调用。事先不知道该事件会是什么。它可以是用户界面上的点击或按键等。
updater定义中出现的问题{ props; state = nextState; **updater** }:
Error: This field …Run Code Online (Sandbox Code Playgroud) javascript ×3
ocaml ×3
webpack ×3
async-await ×1
babeljs ×1
es6-promise ×1
function ×1
graphql ×1
menhir ×1
node.js ×1
ocaml-lwt ×1
parsing ×1
polymorphism ×1
reactjs ×1
relayjs ×1
swift ×1