How to use the exportDefaultDeclaration function from @babel/types

Find comprehensive JavaScript @babel/types.exportDefaultDeclaration code examples handpicked from public code repositorys.

The @babel/types.exportDefaultDeclaration represents a default export statement in a module.

149
150
151
152
153
154
155
156
157
158
        // Add `createAsyncTestListener` function declearation
        path.insertBefore(asyncTestListenerNode());

        // Export `Modernizr` as default export instead of `addTest`
        path.replaceWith(
            t.exportDefaultDeclaration(t.identifier('Modernizr'))
        );
    }
},
MemberExpression(path) {
fork icon2
star icon15
watch icon2

+ 7 other calls in file

28
29
30
31
32
33
34
35
36
37
            )
          )
        )
      ),
    ]),
    t.exportDefaultDeclaration(t.identifier(componentName)),
  ]

  return t.program(body, [], 'module')
}
fork icon0
star icon3
watch icon1

+ 3 other calls in file

How does @babel/types.exportDefaultDeclaration work?

@babel/types.exportDefaultDeclaration is a module provided by Babel that allows you to create an AST node representing an export default declaration in a JavaScript module. In detail, this function takes an expression (which is the default export) as an argument and returns an object representing the export default declaration with the given expression as its value. This AST node can then be used to generate JavaScript code using a tool like Babel.

106
107
108
109
110
111
112
113
114
115
116
117
    t.stringLiteral(moduleName)
  );
}


function generateDefaultExport(varName) {
  return t.exportDefaultDeclaration(t.identifier(varName));
}


function generateValue(value, isSubstitutions = false, scope = null) {
  switch (kindOf(value)) {
fork icon1
star icon2
watch icon0

+ 57 other calls in file

34
35
36
37
38
39
40
41
42
43
    const ImportDeclarationLess = t.importDeclaration([], t.stringLiteral(src))
    return ImportDeclarationLess
}

exports.ExportDeclatationDefault = function ExportDeclatationDefault(exportId) {
    const exportDefaultDeclaration = t.exportDefaultDeclaration(t.Identifier(exportId))
    return exportDefaultDeclaration
}

// 生成 ClassDeclaration
fork icon1
star icon2
watch icon0

Ai Example

1
2
3
4
5
6
7
8
9
10
11
const t = require("@babel/types");

const declaration = t.functionDeclaration(
  t.identifier("foo"),
  [],
  t.blockStatement([t.returnStatement(t.stringLiteral("Hello, world!"))])
);

const exportDefaultDeclaration = t.exportDefaultDeclaration(declaration);

console.log(exportDefaultDeclaration);

This will output: yaml Copy code

270
271
272
273
274
275
276
277
278
279
} else {
  programPath.unshiftContainer("body", exportsAlias);
  programPath.unshiftContainer("body", moduleExportsAlias);
}

const defaultExport = t.exportDefaultDeclaration(
  t.memberExpression(t.identifier("module"), t.identifier("exports"))
);

path.node.__replaced = true;
fork icon0
star icon1
watch icon1

+ 10 other calls in file

53
54
55
56
57
58
59
60
61
        })
      )
    ]),
    { declare: true }
  ),
  t.exportDefaultDeclaration(t.identifier('config'))
]);

let code = `// This is an autogenerated file. Do not edit it directly.\n${generate(declaration).code}`;
fork icon0
star icon1
watch icon0

+ 11 other calls in file

Other functions in @babel/types

Sorted by popularity

function icon

@babel/types.identifier is the most popular function in @babel/types (20936 examples)