Происхождение файлов `holoclient.js` и` holoclient.map` в приложении holochain? - PullRequest
0 голосов
/ 11 декабря 2018

В https://github.com/holochain/holochat-rust, как получаются файлы ui/holoclient.js и ui/holoclient.map?

Кроме того, есть ли официальная документация о том, что я пропустил, и это все еще способ получитьИнтерфейс для общения с контейнером holochain?

1 Ответ

0 голосов
/ 22 января 2019

ui/holoclient.js - это крошечная библиотека , которая значительно упрощает общение с работающим экземпляром приложения Holochain.Текущий способ подключения вашего GUI к экземпляру - это JSON-RPC-подобный процесс через локальное соединение WebSocket.Он предназначен как приятная оболочка, чтобы вызовы функций zome походили на локальные вызовы функций в браузере. Документация в настоящее время очень легкая, но не нужно много времени, чтобы понять, как она должна работать, используя пример .В двух словах:

const url =  'ws://localhost:3000/'
window.holoclient.connect(url).then(({call, close}) => {
  document.getElementById('form').addEventListener('submit', e => {
    e.preventDefault()
    // First, get a list of locally running Holochain instances...
    call('info/instances')().then(info => {
      // Now that we have instance info, we can make zome calls into any of them
      // by referring to them by DNA hash (and agent ID) as specified in our
      // container config.
      // Search for the instance we're looking for, given known DNA and agent
      // hashes.
      const matchingInstances = Object.entries(info)
        .find(([id, value]) => value.dna === 'blog_dna_hash' && value.agent === 'my_agent_hash')
      const instance = getInstance(info, 'the_dna_hash', 'the_agent_hash')
      const content = document.querySelector('#message').value
      // Make another zome call now
      call(instance, 'blog', 'main', 'create_post')({
        content: content
      })
    })
  })
})

Он написан на TypeScript, что означает, что ui/holoclient.map является 'исходной картой' , файлом, который отображает номера строк в скомпилированном файле JavaScript вномера строк в исходном источнике TypeScript.Chrome и Firefox ищут и используют эти исходные карты при отладке JS.

...