2016-04-01 24 views
1

我們正在學習基本榆樹和構建簡單的應用程序與以下設置一些音頻輸出導出的信號工作:榆樹輸出端口沒有從的startApp

  • 我們使用榆樹的startApp。
  • 我們有一些POC音頻邏輯(和console.log)的ports/audio.js。
  • ATM我們使用elm-live來運行應用程序。

使用從Time.every派生的信號,該端口工作(在ports/audio.js中的代碼運行)。另外,我們通過Debug.log獲得「ping」日誌。

port audio : Signal Int 
port audio = 
    Signal.map (always 400) (Time.every Time.second) 
    |> Signal.map (Debug.log "ping") 

然而,當我們使用的startApp的App。模型導出的信號,我們在港口得到的信號(因爲用的debug.log「平」的日誌記錄),但移植到JS無法正常工作(代碼/audio.js沒有運行)?

port audio : Signal Int 
port audio = 
    Signal.map (always 400) signalDerivedFromStartApp 
    |> Signal.map (Debug.log "ping") 

這可能是一些與Elm signals/ports/StartApp有關的基本事情嗎?

回答

0

我們的專家朋友發現這個問題:因爲我們使用Elm.main在兩個地方

我們的設置被打破
  • 端口/ audio.js有Elm.worker(Elm.Main, {});
  • 的index.html曾與Elm.fullscreen(Elm.Main)
腳本

- >從audio.js中刪除Elm.worker的內容並將audio.js插入到index.html的port實現後,事情已修復。

(這可能不是一個完美的/最終的解決方案,但解決了我們當前的設置問題)