كنت أقوم بإنشاء وحدة npm بمساعدة مكتبة الإنشاء والتفاعل ،
أنا الذي كنت أستخدم به html-reaction-parser.
ولكن بعد استيراد محلل html-response-parser ، حدث خطأ في إعطائه
[!] Error: Unexpected token
node_modules/entities/maps/entities.json (1:9)
1: {"Aacute":"\u00C1","aacute":"\u00E1","Abreve":"\u0102","abreve":"\u0103","ac":"\u223E","acd":"\u223F","acE":"\u223E\u0333","Acirc":"\u00C2","acirc":"\u00E2","acute":"\u00B4","Acy":"\u0410","acy":"\u0430","AElig":"\u00C6","aelig":"\ ....very long json
error Command failed with exit code 1.
مرحبًا @ KARTIK01 ، هل يمكنك تقديم الخطوات حتى أتمكن من إعادة
يبدو أن الخطأ قادم من entities.json
، والذي يستخدمه htmlparser2
، وهي تبعية لهذه المكتبة للتحليل على جانب الخادم.
مرحبًا remarkablemark ، إليك معلومات بخصوص إعادة إنتاج هذا الخطأ.
نظام التشغيل: MacOS Mojave الإصدار 10.14.1
إصدار العقدة: v10.14.1
الغزل: 1.12.3 (أنا أستخدم الغزل لهذا المشروع)
npm: 6.4.1
خطوات الإنتاج.
create-react-library
yarn add html-react-parser
src/index.js
أضف بيان استيراد.
import Parcer from 'html-react-parser'
yarn start
مرة أخرى.أنا أستخدم العرض من جانب العميل.
يبدو أن التجميع لا يتحقق بشكل صحيح من الحقل "browser"
في html-react-parser
's package.json
.
نظرًا لأن المكتبة متشابهة (يتم تشغيلها على كل من الخادم والعميل) ، فإن حقل المتصفح هو ما يخبر حزم مثل حزمة الويب لاستبدال كود معين برمز متوافق مع المتصفح.
يجب أن يؤدي استيراد إصدار العميل من المكتبة إلى حل الخطأ:
// src/index.js
import Parser from 'html-react-parser/dist/html-react-parser'
دعني اعلم ان كانت تعمل ل.
شكرا @ remarkablemark ،
الآن تعمل بشكل جيد ، فقط إعطاء تحذير.
(!) Use of eval is strongly discouraged
https://github.com/rollup/rollup/wiki/Troubleshooting#avoiding-eval
node_modules/html-react-parser/dist/html-react-parser.js
109: /***/ (function(module, exports, __webpack_require__) {
110:
111: eval("var domToReact = __webpack_require__(/*! ./lib/dom-to-react */ \"./lib/dom-to-react.js\");\nvar htmlToDOM = __webpack_require__(/*! html-dom-parser */ \"./node_modules/html-dom-parser/lib/html-to-dom-client.js\");\n\n// decode HTML entities by default for `htmlparser2`\nvar domParserOptions = { decodeEntities: true, lowerCaseAttributeNames: false };\n\n/**\n * Convert HTML string to React elements.\n *\n * <strong i="8">@param</strong> {String} html - The HTML string.\n * <strong i="9">@param</strong> {Object} [options] - The additional options.\n * <strong i="10">@param</strong> {Function} [options.replace] - The replace method.\n * <strong i="11">@return</strong> {ReactElement|Array}\n */\nfunction HTMLReactParser(html, options) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n return domToReact(htmlToDOM(html, domParserOptions), options);\n}\n\n/**\n * Export HTML to React parser.\n */\nmodule.exports = HTMLReactParser;\n\n\n//# sourceURL=webpack://HTMLReactParser/./index.js?");
^
112:
113: /***/ }),
...and 15 other occurrences
أعتقد أن هذه مسألة تراكمية.
أوافق @ KARTIK01. لا تتردد في إغلاق المشكلة إذا تم حلها.
التعليق الأكثر فائدة
يبدو أن التجميع لا يتحقق بشكل صحيح من الحقل
"browser"
فيhtml-react-parser
'spackage.json
.نظرًا لأن المكتبة متشابهة (يتم تشغيلها على كل من الخادم والعميل) ، فإن حقل المتصفح هو ما يخبر حزم مثل حزمة الويب لاستبدال كود معين برمز متوافق مع المتصفح.
يجب أن يؤدي استيراد إصدار العميل من المكتبة إلى حل الخطأ:
دعني اعلم ان كانت تعمل ل.