Run scriptアクションでYaml exceptionエラー


#1

質問内容

RunScriptアクションを使って、
配列を結合するワークフローを作ろうと思ったのですが、
Yaml exceptionというエラーが出ます。

期待する動作

[“犬”,“鳥”,“猿”, ‘いちご’, ‘りんご’, ‘ぶどう’]という配列が返ってくる。

実際の動作

実行ボタンを押すと、
Yaml exceptionエラーが発生する。

再現手段

1 以下のワークフローを貼り付ける

    # 配列を作成
    +store_value_1:
      action>: StoreValue
      key: arr
      value: ["犬","鳥","猿"]

    # スクリプトを実行
    +run_script_1:
      action>: RunScript
      code: 'var arr2 = ['いちご', 'りんご', 'ぶどう']; 
    return arr.concat(arr2)'

2 実行ボタンを押す


#2

@mirin 投稿ありがとうございます。

Robotic Crowdでは、Yamlの文字列は、シングルクオート(')で区切ることになっております。

    # スクリプトを実行
    +run_script_1:
      action>: RunScript
      code: 'var arr2 = ['いちご', 'りんご', 'ぶどう']; 
    return arr.concat(arr2)'

上記ですと、シングルクオートが、 'いちご' の左側のシングルクオートで閉じられてしまっているため、 Yaml exceptionという風になってしまいます。

ダブルクオートを使って回避可能です。

    # スクリプトを実行
    +run_script_1:
      action>: RunScript
      code: 'var arr2 = ["いちご", "りんご", "ぶどう"]; 
    return arr.concat(arr2)'

お試しください。