TypeError:将google-tag-manager添加到reactjs站点时无法读取未定义的属性“字符串”

Posted

技术标签:

【中文标题】TypeError:将google-tag-manager添加到reactjs站点时无法读取未定义的属性“字符串”【英文标题】:TypeError: Cannot read property 'string' of undefined when adding google-tag-manager to reactjs site 【发布时间】:2019-08-08 01:47:55 【问题描述】:

我的网站是基于react-static 构建的,这是一个基于reactjs 的框架。

我关注谷歌guide 将react-google-tag-manager 添加到项目中。

当我刷新页面时,我在浏览器上收到以下错误,对于 GoogleTagManager 模块:

TypeError: 无法读取未定义的属性“字符串”

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

它将 React 缝合为不再是 Proptypes 属性。

环境:

“反应”:“16.8.4”, “react-google-tag-manager”:“2.2.1”,

【问题讨论】:

【参考方案1】:

prop-types is its own package these days。在 v15.5 中它被移到了一个单独的包中。

import PropTypes from 'prop-types';

class GoogleTagManager extends React.Component 
  static propTypes = 
    gtmId: PropTypes.string.isRequired,
    // ...
  ;

  // ...

【讨论】:

以上是关于TypeError:将google-tag-manager添加到reactjs站点时无法读取未定义的属性“字符串”的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:只能将列表(不是“str”)连接到列表 -

TypeError:无法将数组转换为字符串

TypeError:无法将属性“标题”设置为 null

将表格抓取并写入数据框会显示 TypeError

将 Bot 部署到 Heroku 时如何解决 TypeError?

TypeError:将循环结构转换为 mongodb/mongoose 的 JSON