Webpack在构建后删除代码段代码,如何保留它?

时间:2019-06-30 04:14:41

标签: reactjs webpack

我定义了一个代码段代码并将其显示在Web上,以便用户可以复制使用,但是在以Webpack生产模式构建应用程序后,代码段消失了。

我认为webpack将其视为未使用的代码,因此在构建时将其删除。

代码段

let html = `
      <script>
        (function(w, d, t, s, n) {
          ...
          const fn = function() {
            (w[n].q = w[n].q || []).push(arguments);
          };
          w[n] = w[n] || fn;
          const f = d.getElementsByTagName(t)[0];
          const e = d.createElement(t);
          const h = '?v' + new Date().getTime();
          e.async = true;
          e.src = s + h;
          f.parentNode.insertBefore(e, f);
        })(window, document, 'script', '${process.env.UNIVERSAL_SCRIPT}', 'fd');
        window.fd('form', { userId: '${form.userId}', formId: '${form.id}' });
      </script>
    `;
    html = jsBeautify.html(html, { indent_size: 2 });

在react组件中渲染:

<SyntaxHighlighter language="xml" style={monokai} id="html">
  {html}
</SyntaxHighlighter>

这是演示存储库:https://github.com/minhtranite/webpack-remove-snippet。请运行startstart:prod以查看差异结果。

1 个答案:

答案 0 :(得分:0)

似乎您尚未定义变量form,导致构建失败。或者,language =“ html”导致将其解析为html。 language =“ text”会将其呈现为文本。