0

私は node-opcua からクライアントとサーバーの両方を使用しています。クライアントが値を書き込もうとして何か問題が発生した場合、サーバー側のエラー管理とは別に正常に動作しています。それを改善するために、次の例のような非同期セッターが必要です。

        const wantedValue = namespace.addAnalogDataItem({
            componentOf: node,
            browseName: `${chamber}${folder}Req`,
            nodeId: `s=${chamber}${folder}Req`,
            dataType: "Double",
            engineeringUnits: settings.unit,
            engineeringUnitsRange: settings.range,
            value: {
                get: () => new Variant({dataType: DataType.Double, value: wrapper.readProgram(chamber, folder)}),
                set: async (variant: Variant) => {
                    const success = await wrapper.writeProgram(chamber, folder, variant.value)
                    return  success ? StatusCodes.Good : StatusCodes.Bad
                }
            }
        })    

この素朴なアプローチは、型エラーにつながります。

    throw new Error("Cannot find StatusCode " + statusCode);

それを行うより良い方法はありますか?

4

1 に答える 1