मैं लिखने की जरूरत है एक कस्टम घूंट कार्य को हटाने जाएगा कि विशेषताओं में से HTML

0

सवाल

मैं कर रहा हूँ की आवश्यकता होगी, एक घूंट कार्य होगा कि सभी के माध्यम से जाने सौंपा HTML दस्तावेजों, और दूर के कुछ गुण (इस तरह के रूप में शैली=""). मैंने सोचा कि मैं किया गया हो सकता है ऐसा करने में सक्षम यह एक ही रास्ता मैं यह नहीं है के माध्यम से ब्राउज़र है, लेकिन लग रहा है पसंद नहीं है. यहाँ है क्या मैं कोशिश कर रहा हूँ करने के लिए:

// function to take multiple attributes from an element
const discardAttributes = (element, ...attributes) =>
  attributes.forEach((attribute) => element.removeAttribute(attribute));

// run the function on multiple elements
document.querySelectorAll("table, thead, tbody, tr, th, td").forEach((elem) => {
  discardAttributes(elem, "cellspacing", "cellpadding", "width", "style");
});

मैं करना चाहते हैं तो उपरोक्त सूत्र बनाने के लिए और एक घूंट.कार्य की तरह तो:

const gulp = require("gulp");

gulp.task("clean",  async () => {
 gulp.src("src/*.html")
  .pipe(discardAttributes())
    .pipe(gulp.dest("dist"));
});

अगर वहाँ है एक प्लग में मैं कर सकते हैं का उपयोग करना होगा कि इस शेयर कृपया, लेकिन यह भी, मैं करने के लिए सीखना कैसे यह करने के लिए मैन्युअल रूप से इस तरह है ।

मैं का उपयोग करने की जरूरत through2?

धन्यवाद ।

gulp javascript npm
2021-11-20 16:26:41
1

सबसे अच्छा जवाब

0

आप उपयोग कर सकते हैं कुछ नोड डोम पुस्तकालय, और इसे लपेटो के साथ घूंट. उदाहरण के लिए आप की कोशिश कर सकते jsdom और आवरण घूंट-डोम:

const gulp = require('gulp');
const dom = require("gulp-dom");

gulp.task("default", async () => {
 gulp.src("src/*.html")
  .pipe(dom(function() {

      // function to take multiple attributes from an element
      const discardAttributes = (element, ...attributes) =>
        attributes.forEach((attribute) => element.removeAttribute(attribute));

      // run the function on multiple elements
      return this.querySelectorAll("table, thead, tbody, tr, th, td").forEach((elem) => {
       discardAttributes(elem, "cellspacing", "cellpadding", "width", "style");
    });

  }))
  .pipe(gulp.dest("dist"));
});
2021-11-21 17:18:21

इस होनहार लग रहा है, मैं कर रहा हूँ के बारे में करने के लिए यह प्रयास करें । प्रश्न: मैं देख नहीं jsdom में कहीं भी कोड है, कैसे करता है यह खेलने में आते हैं यहाँ? बहाना मेरे गूंगा सवाल है, लेकिन मैं कर रहा हूँ के लिए नए नोड है । अद्यतन: के अनुसार एनपीएम डॉक्स, "[घूंट-डोम] प्लगइन wraps jsdom. हालांकि, इस प्लगइन करता है, नहीं सभी सुविधाओं को सक्षम द्वारा ही प्रदान की जाती jsdom. एकमात्र उद्देश्य के लिए jsdom इस प्लगइन में पार्स करने के लिए है एक HTML दस्तावेज़ में एक डोम तो हम कर सकते हैं चलाने के संचालन पर।"
desert_dweller

यह काम करता है! बहुत बहुत धन्यवाद. यहाँ है क्या मैंने किया. (1) मैं स्थापित jsdom के रूप में एक devDependancy (2) मैं स्थापित घूंट-डोम के रूप में एक devDependancy (3) मैं चिपकाया कोड और ऊपर दौड़ा घूंट. खेद है कि मैं नहीं कर सकता upvote अभी तक.
desert_dweller

घूंट-डोम प्लगइन भी शामिल है jsdom, कोई जरूरत नहीं स्थापित करने के लिए यह अलग-अलग है । यदि आप के साथ खुश हैं आप का जवाब कर सकते हैं यह स्वीकार करते हैं ।
Nikolay

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में