Search code examples
reactjsgoogle-tag-managerreact-proptypesreact-static

TypeError: Cannot read property 'string' of undefined when adding google-tag-manager to reactjs site


My site is build on react-static,a framework based on reactjs.

I follow the google guide for adding the react-google-tag-manager to the project.

When i refresh page i get the following error on the browser, for GoogleTagManager module:

TypeError: Cannot read property 'string' of undefined

at

GoogleTagManager.propTypes = {
     gtmId: React.PropTypes.string.isRequired,

It seams React as no long the Proptypes property.

Enverioment:

  • "react": "16.8.4",
  • "react-google-tag-manager": "2.2.1",

Solution

  • prop-types is its own package these days. It got moved to a separate package in v15.5.

    import PropTypes from 'prop-types';
    
    class GoogleTagManager extends React.Component {
      static propTypes = {
        gtmId: PropTypes.string.isRequired,
        // ...
      };
    
      // ...
    }