Skip to content

Rollup unable to tree-shake classes #1691

Description

@scripter-co

When using React, for example, and defining defaultProps will not allow rollup to tree-shake the class from the outputted bundle.

The rollup/repl can be found here.

main.js

import { IncludeMe } from './maths.js';

IncludeMe();

maths.js

class AnUnusedClass {
}

AnUnusedClass.defaultProps = {}

function IncludeMe() {
	console.log('bla');
}

export { AnUnusedClass };

export { IncludeMe }

output:

(function () {
'use strict';

class AnUnusedClass {
}

AnUnusedClass.defaultProps = {};

function IncludeMe() {
	console.log('bla');
}

IncludeMe();

}());

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions