如何在MarkLogic 10的资源扩展中导入JavaScript模块
MarkLogicV10引入了对本机JavaScript模块(ECMAScript模块)的支持 但是,我不知道如何在资源扩展中导入这样的模块。例如:如何在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
'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扩展和数据服务之间的主要区别是什么?