@samitouri / QOS-React / commits / 5301c41417

Revert "Remove empty value for boolean attributes in SSR (#11708)" (#11798)

This reverts commit e0c31137434d7c7df2bc3475cb7682b1d7eecc8b.

Brandon Dail committed Dec 7, 2017 at 14:06 UTC 5301c41417581cc0bde955e062eba92f72b6e992
2 files changed +10 -10
packages/react-dom/src/__tests__/ReactDOMSelect-test.js
+9 -9
@@ -440,9 +440,9 @@ describe('ReactDOMSelect', () => {
440 </select>
441 );
442 const markup = ReactDOMServer.renderToString(stub);
443 - expect(markup).toContain('<option selected value="giraffe"');
444 - expect(markup).not.toContain('<option selected value="monkey"');
445 - expect(markup).not.toContain('<option selected value="gorilla"');
443 + expect(markup).toContain('<option selected="" value="giraffe"');
444 + expect(markup).not.toContain('<option selected="" value="monkey"');
445 + expect(markup).not.toContain('<option selected="" value="gorilla"');
446 });
447
448 it('should support server-side rendering with defaultValue', () => {
@@ -454,9 +454,9 @@ describe('ReactDOMSelect', () => {
454 </select>
455 );
456 const markup = ReactDOMServer.renderToString(stub);
457 - expect(markup).toContain('<option selected value="giraffe"');
458 - expect(markup).not.toContain('<option selected value="monkey"');
459 - expect(markup).not.toContain('<option selected value="gorilla"');
457 + expect(markup).toContain('<option selected="" value="giraffe"');
458 + expect(markup).not.toContain('<option selected="" value="monkey"');
459 + expect(markup).not.toContain('<option selected="" value="gorilla"');
460 });
461
462 it('should support server-side rendering with multiple', () => {
@@ -468,9 +468,9 @@ describe('ReactDOMSelect', () => {
468 </select>
469 );
470 const markup = ReactDOMServer.renderToString(stub);
471 - expect(markup).toContain('<option selected value="giraffe"');
472 - expect(markup).toContain('<option selected value="gorilla"');
473 - expect(markup).not.toContain('<option selected value="monkey"');
471 + expect(markup).toContain('<option selected="" value="giraffe"');
472 + expect(markup).toContain('<option selected="" value="gorilla"');
473 + expect(markup).not.toContain('<option selected="" value="monkey"');
474 });
475
476 it('should not control defaultValue if readding options', () => {
packages/react-dom/src/server/DOMMarkupOperations.js
+1 -1
@@ -90,7 +90,7 @@ export function createMarkupForProperty(name, value) {
90 propertyInfo.hasBooleanValue ||
91 (propertyInfo.hasOverloadedBooleanValue && value === true)
92 ) {
93 - return attributeName;
93 + return attributeName + '=""';
94 } else if (
95 typeof value !== 'boolean' ||
96 shouldAttributeAcceptBooleanValue(name)