FIxes #673 - Circular dependency is causing problems with Webpack

This commit is contained in:
Patrick Steele-Idem 2017-04-18 12:08:14 -06:00
parent 845c177be6
commit 9f1675d5af
2 changed files with 8 additions and 4 deletions

View File

@ -1,7 +1,6 @@
'use strict';
var ComponentDef = require('./ComponentDef');
var initComponents = require('./init-components');
var componentsUtil = require('./util');
var isServer = componentsUtil.$__isServer === true;
@ -19,13 +18,15 @@ function GlobalComponentsContext(out) {
}
GlobalComponentsContext.prototype = {
$__initComponents: function (doc) {
$__initComponents: function(doc) {
var topLevelComponentDefs = null;
this.$__roots.forEach(function(root) {
var children = root.$__children;
if (children) {
initComponents.$__initClientRendered(children, doc);
// NOTE: ComponentsContext.$__initClientRendered is provided by
// index-browser.js to avoid a circular dependency
ComponentsContext.$__initClientRendered(children, doc);
if (topLevelComponentDefs === null) {
topLevelComponentDefs = children;
} else {

View File

@ -1,6 +1,9 @@
var componentsUtil = require('./util');
var events = require('../runtime/events');
var Component = require('./Component');
var initComponents = require('./init-components');
require('./ComponentsContext').$__initClientRendered = initComponents.$__initClientRendered;
function onInitComponent(listener) {
events.on('initComponent', listener);
@ -9,7 +12,7 @@ function onInitComponent(listener) {
exports.onInitComponent = onInitComponent;
exports.Component = Component;
exports.getComponentForEl = componentsUtil.$__getComponentForEl;
exports.init = require('./init-components').$__initServerRendered;
exports.init = initComponents.$__initServerRendered;
exports.c = require('./defineComponent'); // Referenced by compiled templates
exports.r = require('./renderer'); // Referenced by compiled templates