我正在尝试Mendix 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()被定义为接受一个参数,但它并不存在。但是,为什么在建议的设置中出现脚本错误呢?我将讨论这个问题。但需要帮助才能从哪里开始。
这“感觉”像是版本差异/设置错误。但在我设置它的时候,我没有看到任何其他地方的错误。
我遗漏了什么?
发布于 2019-03-29 20:12:54
我没有让这个特定的示例脚本工作的经验;它可能已经过时了。在我自己的脚本中,我使用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}`);
}
}https://stackoverflow.com/questions/55408264
复制相似问题