Повторять задачу Джейка, используя цикл while в coffeescript?
Я пытаюсь выполнить задачу 10 раз в Джейк:
task 'default', (page) ->
page = process.env.page
running = 0
while running < 10
ex = jake.createExec(["casperjs test.coffee --page=#{page}"],
printStdout: true
)
ex.run()
running++
page++
это запустит тест 10 раз. что деос хорошо. однако я хочу, чтобы он работал по порядку, например сначала страница1, затем страница2, затем страница3 и т. д., так что первая страница 1 должна завершиться, прежде чем появится страница2. в данный момент он запускает их параллельно или асинхронно. Спасибо за вашу помощь.
1 ответ
Решение
Я использую библиотеку Async для такого рода вещей. Что-то вроде:
async = require 'async'
pages = for i in [0...10]
do ->
j = i
->
ex = jake.createExec ["casperjs test.coffee --page=#{j}"],
printStdout: true
ex.run()
async.series pages
Однако я немного удивляюсь, почему они нужны для последовательной работы.