Less.js: استيراد عناوين url البعيدة معطلة مع v3.0.1

تم إنشاؤها على ٢٠ مارس ٢٠١٨  ·  6تعليقات  ·  مصدر: less/less.js

مع أقل v2.7.3 (باستخدام webpack v3.1.0 وأقل محمل v4.1.0) يمكنني استيراد الخطوط البعيدة مثل هذا في ملف main.less الخاص بي:

<strong i="6">@import</strong> url('https://fonts.googleapis.com/css?family=Nunito');

باستخدام أقل من v3.0.1 باستخدام نفس التكوين والتبعيات ، لا أحصل الآن على هذا الخطأ إلا عند محاولة الإنشاء:

Message:
    ./node_modules/css-loader??ref--1-2!./node_modules/postcss-loader/lib??ref--1-3!./node_modules/less-loader/dist/cjs.js??ref--1-4!./src/css/main.less
Module build failed:

 */
<strong i="10">@import</strong> url('https://fonts.googleapis.com/css?family=Nunito');
^
Can't resolve './https://fonts.googleapis.com/css?family=Nunito' in 'C:\Projekte\mine\homepage\src\css'
      in C:\Projekte\mine\homepage\src\css\main.less (line 6, column 0)
question

التعليق الأكثر فائدة

أعتقد أن هذا قد يكون مرتبطًا بحقيقة أن Less لم يعد يقوم بالتبديل التلقائي إلى استيراد "css" (مع الاحتفاظ ببيان @import ) لمجرد أنه عثر على سلسلة "css" في مكان ما في عنوان URL.

جرب <strong i="7">@import</strong> (css) url('https://fonts.googleapis.com/css?family=Nunito');

ال 6 كومينتر

أعتقد أن هذا قد يكون مرتبطًا بحقيقة أن Less لم يعد يقوم بالتبديل التلقائي إلى استيراد "css" (مع الاحتفاظ ببيان @import ) لمجرد أنه عثر على سلسلة "css" في مكان ما في عنوان URL.

جرب <strong i="7">@import</strong> (css) url('https://fonts.googleapis.com/css?family=Nunito');

رائع @ ماثيو دين الذي ساعد بالفعل. تشك كثيرا!

@ matthew-dean هل هناك طريقة لإخبار المترجم باستخدام https بشكل افتراضي عند حل عناوين url من الواردات؟ على سبيل المثال ، عندما أستخدم <strong i="5">@import</strong> url(//fonts.googleapis.com/css?family=Open+Sans:400,700); ، يكون الناتج
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local('Open Sans Regular'), local('OpenSans-Regular'), url(http://fonts.gstatic.com/s/opensans/v17/mem8YaGs126MiZpBA-UFVZ0e.ttf) format('truetype'); }
عندما أضع هذا على صفحة يتم تحميلها عبر HTTPS ، أحصل على خطأ "محتوى مختلط" وتكون طلبات http محظورة بواسطة المتصفح. لذا يتعين علي الآن تحديث جميع عمليات الاستيراد لاستخدام (css) أو https://... ، لذا أتساءل فقط عما إذا كان بإمكاني القيام بذلك باستخدام خيار التكوين بدلاً من ذلك؟

لذا أتساءل فقط عما إذا كان بإمكاني القيام بذلك باستخدام خيار التكوين بدلاً من ذلك؟

لا. المزيد حول فكرة استيراد fonts.googleapis.com إلى CSS مترجم أمر خطير لأن fonts.googleapis.com يشم المتصفح المستخدم (بشكل واضح أقل في node سيبلغ عن نفسه على أنه Chrome / Chromium ) وقد تُرجع نتائج مختلفة بناءً على ذلك (لم أسمع حتى الآن بأي مشكلة في هذا الصدد ولكن يمكن كسرها مجانًا في أي لحظة).

@ dmitriy-drenkalyuk لماذا لا تكتب فقط:

<strong i="6">@import</strong> url(https://fonts.googleapis.com/css?family=Open+Sans:400,700);

؟

@ Matthew-dean هذا ما فعلته في النهاية ، كنت أبحث فقط عن خيار للقيام بذلك عبر التهيئة ، حتى لا نحتاج إلى البحث عن جميع الأماكن التي نستخدمها مثل هذه الواردات وتحديثها.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات