【问题标题】:Mendix setup problem - suggested code not workingMendix 设置问题 - 建议的代码不起作用
【发布时间】:2019-08-19 20:29:14
【问题描述】:

我正在尝试使用 Mendix Typescript SDK 并按照https://docs.mendix.com/apidocs-mxsdk/mxsdk/setting-up-your-development-environment 上的说明进行操作。

然后我跟着https://docs.mendix.com/apidocs-mxsdk/mxsdk/creating-your-first-script创建了一个脚本来尝试一下。

但是,我收到此页面上建议的代码 script.ts 的以下错误:

error TS2554: Expected 1-2 arguments, but got 0.
30     return dm.load();
      ~~~~~~~~~
node_modules/mendixmodelsdk/dist/gen/domainmodels.d.ts:583:14
583         load(callback: (element: DomainModel) => void, forceRefresh?: boolean): void;
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
An argument for 'callback' was not provided.
Found 1 error.

return dm.load();

我不精通 NodeJS - 但我可以看出传递给 load() 的参数不正确 - 尽管 load() 被定义为采用参数,但它并不存在。但是,为什么建议设置中的脚本出错?我会攻击这个问题。但需要帮助,从哪里开始。

这“感觉”像是版本差异/设置错误。但是我在设置它时在其他任何地方都没有看到任何错误。

我错过了什么?

【问题讨论】:

    标签: node.js mendix


    【解决方案1】:

    我没有制作该特定示例脚本的经验;它也可能已经过时了。在我自己的脚本中,我正在使用loadAsPromise 函数加载数据模型,如文章Generate Code from the Model 中的脚本所示。

    async function serializeToJs() {
        const workingCopy = await project.createWorkingCopy();
        const domainModelInterface = workingCopy.model().allDomainModels().filter(dm => dm.containerAsModule.name === moduleName)[0];
    
        try {
            const domainModel = await loadAsPromise(domainModelInterface);
            console.log(JavaScriptSerializer.serializeToJs(domainModel)); //print out the generated JavaScript
            console.log("success!")
        } catch (error) {
            console.log(`error: ${error}`);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多