javascript - 如何访问 meteor 包内的变量(函数)?

标签 javascript node.js meteor

我的 Meteor 应用程序中安装了一个 Meteor 软件包

/packages/mypackage/some_code.js

里面是一个函数:

function myFunction(){
    ...
}

我想从我的 metoer 应用程序内的另一个文件调用此函数。两个代码都在服务器端运行。

/imports/api/myapi.js

如何从 myapi.js 访问 myFunction ?

更新:

经过多次尝试和错误,我的导出看起来像这样:

var exports = module.exports = {};

exports.getResponses = function (){
    return responses;
}

并导入:

import { getResponses } from 'meteor/user:mypackage/myfile.js' ;

最佳答案

此主题由 Meteor Guide on Exporting 涵盖。在该指南中:

While some packages exist just to provide side effects to the app, most packages provide a reusable bit of code that can be used by the consumer with import. To export a symbol from your package, simply use the ES2015 export syntax in your mainModule:

// in my-package.js:
export const myName = 'my-package';

Now users of your package can import the symbol with:

import { myName } from 'meteor/username:my-package';

这适用于在 /package 中找到的内部包。目录也是如此。只需确保您有 ecmascript core 包,并且您正在正确导出/导入对象。您还需要在.meteor/packages中添加包的名称。通过meteor add <package>或手动输入。

编辑 - 关于导入/导出语法的一些详细说明 - 希望这将帮助您调试undefined问题!

来自MDN's guide on import/export :

导出有两种类型,命名默认

命名导出:

export { myFunction }; // exports a function declared earlier
export const foo = Math.sqrt(2); // exports a constant

默认导出:(每个脚本只有一个)

export default function() {} // or 'export default class {}'
// there is no semi-colon here

命名导出允许每个脚本导出多个值,而导出默认值则允许每个脚本导出一个值,或者作为后备。

例如,要从多个命名导出导入,您可以编写:

import { myFunction, foo } from 'some-module.js';

导入默认值如下所示:

import defs from 'definitions.js';

关于javascript - 如何访问 meteor 包内的变量(函数)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41810727/

相关文章:

javascript - 使用变量react js显示本地镜像

meteor - 无法下载 "https://github.com/sass/node- sass/releases/download/v4.5.2/darwin-x64-57_binding.node"错误。这是什么意思?

javascript - 无法在函数 Javascript 中传递对象

javascript - 信息窗口关闭和 var(google maps api v3)

node.js - 无法再次使用 Jest、Supertest、Passport、Koa2 在测试中发送经过身份验证的请求

node.js - 为什么我无法使用 axios 从 graphql 获得可用的响应?

node.js - 尝试使用 npm 安装 react-native-cli 时出现未满足的依赖关系错误

javascript - 如何为 Meteor 应用程序中的第一个用户分配特定角色?

javascript - Apollo 客户端发送 OPTIONS 而不是 GET HTTP 方法

javascript - 如何在向每个数组添加键值时设置状态