diff --git a/src/platforms/mp-weixin/runtime/wrapper/component-base-parser.js b/src/platforms/mp-weixin/runtime/wrapper/component-base-parser.js index 34cea7acba3672068a6b3a3f9b889a05b4c8b1c8..ff9e97c609169f672e2f064f3a972c3baef7eca7 100644 --- a/src/platforms/mp-weixin/runtime/wrapper/component-base-parser.js +++ b/src/platforms/mp-weixin/runtime/wrapper/component-base-parser.js @@ -21,11 +21,20 @@ export default function parseBaseComponent (vueComponentOptions, { } = {}) { let [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions) + const options = { + multipleSlots: true, + addGlobalClass: true + } + + if (__PLATFORM__ === 'mp-weixin') { + // 微信multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项 + if (vueComponentOptions['mp-weixin'] && vueComponentOptions['mp-weixin']['options']) { + Object.assign(options, vueComponentOptions['mp-weixin']['options']) + } + } + const componentOptions = { - options: { - multipleSlots: true, - addGlobalClass: true - }, + options, data: initData(vueOptions, Vue.prototype), behaviors: initBehaviors(vueOptions, initBehavior), properties: initProperties(vueOptions.props, false, vueOptions.__file),