• node 支持esmodule


    方法一 在 package.json 内指定 type 字段为 module

    该"type"字段定义Node.js用于所有 .js 以该 package.json 文件为最接近父文件的文件的模块格式 。
    .js 当最近的父 package.json 文件包含 "type" 值为的顶级字段时,以 结尾的文件将作为ES模块加载 "module"

      "type": "module",
    

    方式二 修改文件后缀为mjs

    注意mjs和commonjs尽量不能混用
    index.mjs

    import obj from "./module.mjs";
    console.log(obj);
    
    

    module.mjs

    export default {
      a: 1,
    };
    
    

    执行

    node index.mjs
    

    结果:

    方法三 使用webpack编译

    1安装webpack和webpack-cli

    npm install webpack webpack-cli --save-dev
    

    2.安装babel

    npm install --save-dev babel-loader @babel/core
    npm install @babel/preset-env --save-dev
    

    3.新建webpack.config.js

    const path = require("path");
    module.exports = {
      //配置模式
      mode: "development",
      //配置入口文件
      entry: "./index.js",
      //输出文件
      output: {
        path: path.join(__dirname, "/dist"),
        filename: "test.js",
      },
      module: {
        rules: [
          //使用babel编译js
          {
            test: /.m?js$/,
            exclude: /node_modules/,
            use: {
              loader: "babel-loader",
            },
          },
        ],
      },
    };
    
    

    4.新建babel.config.json文件

    {
      "presets": ["@babel/preset-env"]
    }
    
    

    5.执行编译后的 test.js

    node test.js
    

    6.结果:

  • 相关阅读:
    合并报表优化记录
    如何在后台代码中执行原生sql?
    eclipse从数据库逆向生成Hibernate实体类
    用Eclipse进行远程Debug代码
    hibernate自动生成数据库表
    hibernate自动生成数据库表
    php通过UNIX源码编译安装
    php设置方法
    php其他配制选项
    终于做出了目录认证!
  • 原文地址:https://www.cnblogs.com/heihei-haha/p/14685403.html
Copyright © 2020-2023  润新知