首页 > 解决方案 > 你如何在一个 JavaScript 项目中使用多个不会用作 Web 应用程序的文件?需要一个工作示例

问题描述

我在这里有点发疯。

我需要开始用 JavaScript 编写一个独立的非 Web 应用程序。

我的问题是我可以很好地运行(使用nodejs)脚本,但是我不能在多个文件之间拆分我需要编写的代码,因为那时我不知道如何包含它们。

现在我想要的只是最简单的工作示例,即在另一个文件中包含一个 JS 文件,这样我就可以使用那里定义的函数(或者如果我选择的话,可以使用类)。

我的 test.js 看起来像这样。

const { outputText } = require("./text_module.node.js");
outputText();

虽然我的 text_module.node.js 看起来像这样:

function outputText(){
   console.log("hello world");
}

我的 package.json 看起来像这样:

{
  "type": "text_module.node.js"
}

我试过了

  1. 在函数之前添加导出。它告诉我出口是意外的
  2. 使用这个符号:import { something } from "a_path". 任何使用这种表示法的东西都会给我一个“Unexpected token {”错误。

当前配置只是告诉我 outputText() 不是函数。所以我没有想法。

我不知道还有什么方法可以搜索。我一直在寻找关于这个主题的几个小时,似乎无论我在哪里看,都需要一些 HTML 代码来将所有内容绑定在一起或使用另一个第三方工具。使用 jQuery “异步”加载东西,这不是我需要的。我希望它是连续的。

JS 只是不应该像其他脚本语言一样使用吗?否则我无法弄清楚为什么这会如此复杂。我觉得我在这里错过了一些大事。

标签: javascript

解决方案


如果你想使用const { outputText } = require("./text_module.node.js");

将其导出为module.exports = { outputText: outputText }.

在你的问题中,

在函数之前添加导出。它告诉我出口是意外的

因为它是 es6 的东西,并且 nodejs 不支持所有 es6 功能。您可以参考此答案以获取更多详细信息。


推荐阅读