lotion.js: ошибка в приложении, которое подсчитывает количество транзакций, произошедших к настоящему моменту (TypeError: app.listen не является функцией) - PullRequest
0 голосов
/ 22 октября 2018
let app = require('lotion')({
  initialState: { count: 0 }
})

app.use((state, tx) => {
  state.count++
})

app.listen(3000)

При запуске этого кода (который я нашел на официальном сайте лосьона JS) я получаю эту ошибку

/home/kashika/node_modules/supercop.js/lib.js:97
  throw ex;
  ^

TypeError: app.listen is not a function
    at Object.<anonymous> (/home/kashika/prog.js:9:5)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)
    at Function.Module.runMain (module.js:694:10)
    at startup (bootstrap_node.js:204:16)
    at bootstrap_node.js:625:3

1 Ответ

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

Как сказал владелец лосьона:

Кроме того, я удалил зависимость, которая нарушала вашу установку на Node 11, теперь она должна работать на любой версии (хотя вы все равно можете увидеть некоторые странные предупреждения 11, Я бы рекомендовал использовать 10).

Решение:

Удалить каталог node_modules и попытаться снова установить последнюю версию lotion

создайте app.js и замените:

let lotion = require('lotion')

let app = lotion({
    initialState: {
        count: 0
    }
})

function transactionHandler(state, transaction) {
    if (state.count === transaction.nonce) {
        state.count++
    }
}

app.use(transactionHandler)

app.start().then(appInfo => console.log(appInfo.GCI))

, затем выполните node app.js, чтобы решить

...