diff --git a/packages/babel-preset-react-app/index.js b/packages/babel-preset-react-app/index.js
index 87b070070d9..72089b9b78b 100644
--- a/packages/babel-preset-react-app/index.js
+++ b/packages/babel-preset-react-app/index.js
@@ -92,7 +92,14 @@ module.exports = function(api, opts) {
       // don't work without it: https://github.com/babel/babel/issues/7215
       require('@babel/plugin-transform-destructuring').default,
       // class { handleClick = () => { } }
-      require('@babel/plugin-proposal-class-properties').default,
+      // Enable loose mode to use assignment instead of defineProperty
+      // See discussion in https://github.com/facebook/create-react-app/issues/4263
+      [
+        require('@babel/plugin-proposal-class-properties').default,
+        {
+          loose: true,
+        },
+      ],
       // The following two plugins use Object.assign directly, instead of Babel's
       // extends helper. Note that this assumes `Object.assign` is available.
       // { ...todo, completed: true }