如何在MarkLogic 10的资源扩展中导入JavaScript模块

如何在MarkLogic 10的资源扩展中导入JavaScript模块,javascript,marklogic,Javascript,Marklogic,MarkLogicV10引入了对本机JavaScript模块(ECMAScript模块)的支持 但是,我不知道如何在资源扩展中导入这样的模块。例如: 'use strict'; import * as jsearch = from '/MarkLogic/jsearch.mjs'; function get(context, params) { // omitted }; exports.GET = get; 将导致以下错误: JS-JAVASCRIPT:import*作为jsea

MarkLogicV10引入了对本机JavaScript模块(ECMAScript模块)的支持

但是,我不知道如何在资源扩展中导入这样的模块。例如:

'use strict';

import * as jsearch = from '/MarkLogic/jsearch.mjs';

function get(context, params) {
  // omitted
};

exports.GET = get;
将导致以下错误:

JS-JAVASCRIPT:import*作为jsearch=from'/MarkLogic/jsearch.mjs'-- 运行JavaScript请求时出错:语法错误:意外标记*

类似地,从“/bar.mjs”导入自定义模块(如
import{foo})会导致类似的错误:
意外标记{


谢谢!

您有一个小语法错误。请从导入语句中删除
=

import * as jsearch from '/MarkLogic/jsearch.mjs';
但是,看起来您正在构建自定义REST扩展。自定义REST扩展无法使用mjs模块。因为资源服务扩展是由REST API为当前请求动态导入的,所以REST API无法获得静态缓存JavaScript*.mjs模块库的好处


您可以考虑通过数据服务来公开该功能,它可以导入MJS模块。请查看Node.js中的进一步信息。

谢谢您的澄清!数据服务功能仅通过MARKORGATIC java或节点客户机提供吗?REST扩展和数据服务之间的主要区别是什么?