Keystone.JS多个部分文件夹并更改名称

时间:2017-09-24 09:27:35

标签: keystonejs

我对keystone.js的templates / views文件夹中的partial文件夹有一些疑问(使用把手):

1)是否可以有多个局部文件夹? (如果是的话,你是怎么做到的?)

2)我可以更改文件夹的名称吗?

1 个答案:

答案 0 :(得分:2)

您可以在 templates / views / partials 目录中创建子目录。

例如,您可以创建一个目录 templates / views / partials / sub 并创建一个文件 myPartial.hbs ,然后您可以将其包含在另一个文件中这样:

void PayRollList::insert(string EmpName, double rate, double hours){
ListNode* newNode = new ListNode;

newNode->p.setName(EmpName);
newNode->p.setRate(rate);
newNode->p.setHours(hours);
newNode->next = nullptr;

ListNode* current = this->head;
ListNode* temp;

if ( head == nullptr ){
    this->head = newNode; }
else {
    current = this->head;
    while ( current->next != nullptr ){
        if ( newNode->p.getRate() < current->p.getRate() && this->head == current){
            temp = current;
            this->head = newNode;
            newNode->next = temp;
            return;
        }
        else if ( newNode->p.getRate() < current->p.getRate() && this->head != current){
            temp = current;
            current = current->next;
            newNode->next = current;
            temp->next = newNode;
            return;
        }
        else if ( newNode->p.getRate() < current->p.getRate() ){
            temp = current;
            current = current->next;
            newNode->next = current;
            temp->next = newNode;
            return;
        }
        else current = current->next;
    }
    current->next = newNode;
}

KeystoneJS将处理 templates / views / partials 目录及其中所有子目录中 .hbs 文件的注册。

您可以在项目根目录中的 keystone.js 文件中更改 partials 目录的名称。

找到传递给 keystone.init()'自定义引擎'选项,并更改 partialsDir 的值:

{{> sub/myPartial }}

您还可以使用数组创建多个partials目录:

'custom engine': handlebars.create({
  layoutsDir: 'templates/views/layouts',
  partialsDir: 'templates/views/new-partials',
  defaultLayout: 'default',
  helpers: new require('./templates/views/helpers')(),
  extname: '.hbs',
}).engine,