Javascript 如何在node.js中导入模块或外部.js文件

Javascript 如何在node.js中导入模块或外部.js文件,javascript,node.js,node-modules,tensorflow.js,Javascript,Node.js,Node Modules,Tensorflow.js,我想在我的节点应用程序中使用tensorflow.js 这里的例子是: 国家: 装置 $npm install@tensorflow/tfjs@tensorflow models/universal句子编码器 用法 要在npm中导入: import * as use from '@tensorflow-models/universal-sentence-encoder'; 或作为独立脚本标记: <script src="https://cdn.jsdelivr.net/npm/@tens

我想在我的节点应用程序中使用tensorflow.js

这里的例子是:

国家:

装置

$npm install@tensorflow/tfjs@tensorflow models/universal句子编码器

用法 要在npm中导入:

import * as use from '@tensorflow-models/universal-sentence-encoder';
或作为独立脚本标记:

<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/universal-sentence-encoder"></script>

如果我将脚本标记添加到一个html文件(没有node.js),如果我在同一个html文件中的脚本标记中执行它,我的代码就会工作

但我不知道如何将功能导入我的节点应用程序(运行express的.js文件)

我是否需要“要求”某些东西,因为“导入…”不起作用

我希望你能帮助我,亲切的问候, mg

  • 在节点中,您可以使用以下命令加载
    通用句子编码器
const use=require(“@tensorflow模型/通用句子编码器”);
  • 从node.js 13(实验版)开始,可以在node.js中使用es6导入。但该文件应将其最近的父包.json
    type
    设置为
    module

  • 如果对node.js使用ts节点类型脚本执行环境,则可以使用es6导入语法。但是您需要提供ts.config.json,指示您正在加载一个common.js模块

{
“编译器选项”:{
“模块”:“commonjs”,
“esModuleInterop”:正确,
“目标”:“es6”,
“noImplicitAny”:没错,
“moduleResolution”:“节点”,
“源地图”:正确,
“outDir”:“out”,
“baseUrl”:“,
“路径”:{
"*": [
“node_modules/*”,
“src/types/*”
]
}
},
“包括”:[
“src/***”
]
}

是的,您需要
require
,因为
import
在Nodejs中不起作用。原因是,
import
是ES6模块语法,但Nodejs在CommonJS上工作。