Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apostrophe cms 布局小部件:将下拉菜单添加到小部件控制UI栏_Apostrophe Cms - Fatal编程技术网

Apostrophe cms 布局小部件:将下拉菜单添加到小部件控制UI栏

Apostrophe cms 布局小部件:将下拉菜单添加到小部件控制UI栏,apostrophe-cms,Apostrophe Cms,我觉得我已经在文档中的某个地方看到了如何做到这一点的描述,但我一生都找不到它 我所拥有的: 我有一个布局小部件,它实现了一个网格系统,允许编辑器创建2、3和4列布局。您可以在小部件的编辑器模式中选择所需的布局,而不是为每个布局使用不同的模块。columns小部件的index.js如下所示: var textOptions = { widgets: { 'apostrophe-rich-text': { toolbar: [ 'Styles', 'Bold', 'Itali

我觉得我已经在文档中的某个地方看到了如何做到这一点的描述,但我一生都找不到它

我所拥有的: 我有一个布局小部件,它实现了一个网格系统,允许编辑器创建2、3和4列布局。您可以在小部件的编辑器模式中选择所需的布局,而不是为每个布局使用不同的模块。
columns小部件的
index.js
如下所示:

var textOptions = {
  widgets: {
    'apostrophe-rich-text': {
      toolbar: [ 'Styles', 'Bold', 'Italic', 'Subscript', 'Superscript', 'Link', 'Unlink', 'Anchor', 'BulletedList', 'NumberedList', 'Blockquote', 'Table', 'Split'
      ],
      styles: [
        { name: 'Featured Intro', element: 'h1'},
        { name: 'Section Heading', element: 'h2'},
        { name: 'Label', element: 'h3' }
      ]
    },
    'apostrophe-images': {
      minSize: [400, 300]
    }
  }
};

module.exports = {        
  extend: 'apostrophe-widgets',        
  label: 'Columns',
  skipInitialModal: true,
  addFields: [
    {
      type: 'select',
      name: 'gridCols',
      label: 'Columns',
      choices: [
        {
          value: 'twoTwo',
          label: '50 | 50'
        },
        {
          value: 'threeOne',
          label: '75 | 25'
        },
        {
          value: 'oneThree',
          label: '25 | 75'
        },
        {
          value: 'fourCols',
          label: '4 Columns',
          showFields: ['colThree', 'colFour']
        },
        {
          value: 'threeCols',
          label: '3 Columns',
          showFields: ['colThree']
        }
      ]
    },
    {
      name: 'colOne',
      label: 'Column One',
      type: 'area',
      contextualOnly: true,
      options: textOptions
    },
    {
      name: 'colTwo',
      label: 'Column Two',
      type: 'area',
      contextualOnly: true,
      options: textOptions
    },
    {
      name: 'colThree',
      label: 'Column Three',
      type: 'area',
      contextualOnly: true,
      options: textOptions
    },
    {
      name: 'colFour',
      label: 'Column Four',
      type: 'area',
      contextualOnly: true,
      options: textOptions
    }
  ],
  construct: function (self, options) {
    var superPushAssets = self.pushAssets;
    self.pushAssets = function () {
      superPushAssets();
      self.pushAsset('stylesheet', 'grid');
      self.pushAsset('stylesheet', 'editor', { when: 'user' });
    }
  }
};
我想做的是: 我认为为布局小部件设置一个模式是没有意义的,您所做的只是选择您想要的布局类型,我认为在小部件/区域ui的控制组中设置一个下拉列表是理想的,但是类似的文档还没有出现

目前,我使用的是
skipinitialmodel
,因此它以两列开始,因为我还不能仅在上下文中使用


如果我正在扩展撇号区域,那么我只需要超级
widgetControlGroups
,或者使用
addWidgetControlGroups
来添加按钮,但是由于这是一个布局小部件,我正在扩展撇号小部件,所以我有些不知所措。我在Github上的其他项目中也找不到很好的例子。

这方面的一些规定只是用撇号表示,但这是一个非常具体的实现


使用撇号人物角色的小部件配置作为指南

撇号中有一些条款,但这是一个非常具体的实现


使用撇号角色的小部件配置作为本指南

Hi Stuart,感谢您的指导。基于该模块的实现和旋转测试环境,该下拉列表适用于所有小部件。有没有办法将下拉列表添加到特定的小部件类型?仍然难以理解撇号人物角色小部件
和撇号人物角色区域
之间的关系,但它们似乎并不“相关”,它们只是覆盖现有的区域和小部件。我可能完全错了。嗨,斯图尔特,谢谢你的指导。基于该模块的实现和旋转测试环境,该下拉列表适用于所有小部件。有没有办法将下拉列表添加到特定的小部件类型?仍然难以理解撇号人物角色小部件和撇号人物角色区域之间的关系,但它们似乎并不“相关”,它们只是覆盖现有的区域和小部件。不过我可能完全错了。