Как настроить многоязычный сайт в gruntfile.js ?

#gruntjs #assemble

#gruntjs #сборка

Вопрос:

У меня проблема в том, что каждый раз, когда я запускаю grunt assemble терминал, задача никогда не завершается. Вот моя assemble задача в gruntfile.js , может кто-нибудь, пожалуйста, сказать мне, если с этим что-то не так?

    assemble: {
        options: {
            flatten: true,
            assets: '<%= config.tmp %>/assets',
            layout: ['<%= config.src %>/templates/layouts/default.hbs'],
            //data: '<%= config.src %>/data/*.{json,yml}',
            data: ['<%= config.src %>/data/**/*.{json,yml}'],
            partials: ['<%= config.src %>/templates/partials/*.hbs'],
            plugins: ['assemble-contrib-anchors',
                'assemble-contrib-permalinks',
                'assemble-contrib-toc',
                'assemble-contrib-i18n',
                'assemble-contrib-contextual'
            ], //'assemble-contrib-sitemap'
            contextual: {
                dest: '<%= config.tmp %>/'
            },
            i18n: {
                // data: ['<%= config.src %>/data/i18n.json'],
                // templates: ['<%= config.src %>/templates/*.hbs']
                languages: buildLanguages, // buildLanguages = ['en','de','ru']
                templates: ['<%= config.src %>/templates/pages/*.hbs']
            },
            permalinks: {
                structure: ':language/:file:ext'
            },
            files: {
                '<%= config.src %>/': ['<%= config.src %>/templates/pages/*.hbs']
            }
        },
        dist: {
            files: [
                {
                    src: '<%= config.src %>/templates/pages/*.hbs',
                    dest: '<%= config.tmp %>/'
                }
            ]
        }
    },
  

Я использовал grunt assemble --verbose , и он выводит следующие сообщения:

 Assembling pages...

{ _page: 'all',
  dirname: '.tmp',
  filename: 'products-en.html',
  pageName: 'products-en.html',
  pagename: 'products-en.html',
  basename: 'products-en',
  src: 'src/templates/pages/products-en.hbs',
  dest: '.tmp/en/products.html',
  assets: '../assets',
  ext: '.html',
  extname: '.html',
  page: 'nn<h1>Products!</h1>',
  data: { language: 'en', file: 'products' },
  filePair: 
   { src: [Getter],
     dest: '.tmp/',
     orig: { src: [Object], dest: '.tmp/' } },
  index: 3,
  number: 4,
  first: false,
  prev: 2,
  middle: true,
  next: 4,
  last: false,
  slug: 'products-en',
  isCurrentPage: false,
  relativeLink: 'products.html' }
Currentpage: [object Object]
Variables loaded
  

Но когда я заглядываю в свою папку .tmp, .tmp/en/product.html файла нет.

Комментарии:

1. Что grunt --verbose говорит?

2. выводит, что сгенерированные файлы хранятся в некоторой папке, но когда я проверяю там, в этих папках нет файла.

3. Может быть, прикрепить часть выходных данных? И когда вы говорите «задача никогда не будет завершена», вы mean…it зависает, и вы должны прервать выполнение? Или … что-то еще? Подробности о результатах очень важны.

4. Да, я имею в виду, что он зависает там, пока я не прерву выполнение. Я прикрепил вывод при использовании grunt assemble --verbose .

5. Я прокомментировал другой вопрос — не уверен, какой вы хотите использовать, но вы должны удалить тот или иной.