相关疑难解决方法(0)

使用Node.js需要与ES6导入/导出

在我正在合作的项目中,我们有两种选择,我们可以使用哪个模块系统:

  1. 使用require和导出模块,并使用module.exports和导出exports.foo.
  2. 使用ES6导入模块import,并使用ES6导出export

使用一个优于另一个是否有任何性能优势?如果我们使用ES6模块而不是Node模块,还有什么我们应该知道的吗?

javascript node.js ecmascript-6 babeljs

840
推荐指数
10
解决办法
47万
查看次数

es6模块实现,如何加载json文件

我正在实现https://github.com/moroshko/react-autosuggest的示例

重要的代码是这样的:

import React, { Component } from 'react';
import suburbs from 'json!../suburbs.json';

function getSuggestions(input, callback) {
  const suggestions = suburbs
    .filter(suburbObj => suburbMatchRegex.test(suburbObj.suburb))
    .sort((suburbObj1, suburbObj2) =>
      suburbObj1.suburb.toLowerCase().indexOf(lowercasedInput) -
      suburbObj2.suburb.toLowerCase().indexOf(lowercasedInput)
    )
    .slice(0, 7)
    .map(suburbObj => suburbObj.suburb);

  // 'suggestions' will be an array of strings, e.g.:
  //   ['Mentone', 'Mill Park', 'Mordialloc']

  setTimeout(() => callback(null, suggestions), 300);
}
Run Code Online (Sandbox Code Playgroud)

这个示例中的复制粘贴代码(有效)在我的项目中有错误:

Error: Cannot resolve module 'json' in /home/juanda/redux-pruebas/components
Run Code Online (Sandbox Code Playgroud)

如果我拿出前缀json!:

import suburbs from '../suburbs.json';
Run Code Online (Sandbox Code Playgroud)

这样我在编译时就没有错误(导入完成).但是当我执行它时出错:

Uncaught TypeError: _jsonfilesSuburbsJson2.default.filter is not a function
Run Code Online (Sandbox Code Playgroud)

如果我调试它,我可以看到郊区是一个objectc,而不是一个数组,所以没有定义过滤器功能. …

javascript json reactjs webpack

84
推荐指数
3
解决办法
9万
查看次数

如何解析React js中的本地JSON文件?

如何通过JSON文件解析检索其所有数据并在我的代码中使用它?

我已经尝试导入该文件并尝试使用控制台记录它,但它只是打印对象{}:

import jsonData from "./file.json";
console.log(jsonData);
Run Code Online (Sandbox Code Playgroud)

这是我的file.json看起来像:

[
    {
      "id": 1,
      "gender": "Female",
      "first_name": "Helen",
      "last_name": "Nguyen",
      "email": "hnguyen0@bloomberg.com",
      "ip_address": "227.211.25.18"
    }, {
      "id": 2,
      "gender": "Male",
      "first_name": "Carlos",
      "last_name": "Fowler",
      "email": "cfowler1@gnu.org",
      "ip_address": "214.248.201.11"
    }
]
Run Code Online (Sandbox Code Playgroud)

我希望能够访问每个组件的名字和姓氏,并在网站上打印.

javascript json reactjs

18
推荐指数
3
解决办法
6万
查看次数

ES 模块实现是否支持导入 JSON 文件?

我找不到关于使用新的 ES 模块实现导入 JSON 文件的任何答案,我在 StackOverflow 上找到的所有答案都是针对使用 Babel 转译的代码,我想导入我的package.json文件:

import pkg from '../package.json';
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

(node:7863) ExperimentalWarning: The ESM module loader is experimental.
internal/modules/run_main.js:54
    internalBinding('errors').triggerUncaughtException(
                              ^

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".json" for /home/user/files/project/package.json imported from /home/user/files/project/version.js
    at Loader.resolve [as _resolve] (internal/modules/esm/default_resolve.js:126:13)
    at Loader.resolve (internal/modules/esm/loader.js:72:33)
    at Loader.getModuleJob (internal/modules/esm/loader.js:156:40)
    at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:42:40)
    at link (internal/modules/esm/module_job.js:41:36) {
  code: 'ERR_UNKNOWN_FILE_EXTENSION'
}
Run Code Online (Sandbox Code Playgroud)

我正在使用最新的Node.js 13.6.0,我是否只剩下使用fs模块读取文件的选项?

javascript node.js

10
推荐指数
1
解决办法
6516
查看次数

如何在 JSON 文件中导出一组对象,然后使用 es6 导入

我在 json 文件中有一组对象。我正在尝试将此文件导入另一个文件,以便我可以在一个简单的反应项目中引用数据。

我尝试了导出默认值和命名导出的各种组合,但是 JSON 文件在我保存时总是抱怨。这是我想要实现的目标:

(File1.json)

    [
      {
        "userId": 1,
        "id": 1,
        "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
        "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
      }
    ]
Run Code Online (Sandbox Code Playgroud)

文件2.js

    [
      {
        "userId": 1,
        "id": 1,
        "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
        "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem …
Run Code Online (Sandbox Code Playgroud)

javascript json ecmascript-6 es6-modules

6
推荐指数
1
解决办法
2万
查看次数