javascript - js génère automatiquement une structure de répertoires basée sur le fichier de configuration
typecho
typecho 2017-06-24 09:43:49
0
3
1650

Nous initialisons actuellement la bibliothèque de composants. Afin d'être flexibles, nous avons besoin d'une structure de répertoires d'initialisation rapide. Le fichier de configuration de la structure de répertoires angulaire2
actuellement utilisée peut être la suivante

+ grille+ grid
- col
- grid
- - col

< code>- grille

- rangée

De cette façon, nous espérons générer
grid.config.ts
grid.module.ts
index.ts
STATION.md
col.component.ts,
col.component.html,
col.component.scss,

grid.component .ts,

...

J'ai également recherché filemap et baya sur github.

filemap a été testé et ne peut plus être utilisé

le dossier baya peut être généré, mais le fichier ne peut pas être généré
.

Je prévois peut-être de transformer le fichier modèle en json et d'utiliser gulp pour le lire,

mais ce n'est pas aussi intuitif qu'un arbre

🎜Quelqu'un a-t-il une solution ou des suggestions pour ma solution🎜
typecho
typecho

Following the voice in heart.

répondre à tous(3)
给我你的怀抱

J'ai fait une version simple, mais je n'ai pas encore réfléchi à la structure des répertoires de fichiers multicouches et je n'ai pas encore utilisé la récursion

const gulp = require('gulp');
const fs = require('fs');
const path = require('path');
const mkdirp = require('mkdirp');

function writeFile(i) {
  if (!fs.existsSync(i)) {
    fs.writeFile(i, '', 'utf-8');
  }
}
function pack(i) {
  return ['index.ts', 'STATION.md'].concat(i + '.config.ts', i + '.module.ts');
}
function createList(path) {
  return [].concat(path + '.component.ts', path + '.component.html', path + '.component.scss')
}
function splitFlag(value, flag) {
  return value.split(flag)[1].replace(/\s+/g, "");
}

gulp.task('try', function () {
  const paths = path.join(__dirname, "./tempalte");
  fs.readFile(paths, 'utf-8', function (err, data) {
    if (err) throw err;
    const array = data.split('\n');
    array.forEach(f![图片描述][1]unction (i) {
      if (i.indexOf('+') > -1) {
        const folder = splitFlag(i, '+');
        mkdirp(folder);
        pack(folder).forEach(function (item) {
          writeFile(folder + '/' + item);
        })
      }
    });
    var parent;
    array.forEach(function (i) {
      if (i.indexOf('+') > -1) {
        parent = splitFlag(i, '+');
      } else {
        const pa = parent + '/' + splitFlag(i, '-');
        createList(pa).forEach(function (item) {
          writeFile(item);
        })
      }
    });
  });
});

漂亮男人

Écrivez vous-même une fonction d'assistance Node, lisez le fichier de configuration étape par étape et générez les fichiers et dossiers requis. Juste une récursivité.

typecho

Écrivez-en un vous-même en utilisant le module fs, ne soyez pas paresseux

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!