J'ai un fichier test_stuff.js que je lance avec npm test
Cela ressemble à peu près à ceci:
import { assert } from 'assert';
import { MyProvider } from '../src/index';
import { React } from 'react';
const myProvider = (
<MyProvider>
</MyProvider>
);
describe('Array', function() {
describe('#indexOf()', function() {
it('should return -1 when the value is not present', function() {
assert.equal(-1, [1,2,3].indexOf(4));
});
});
});
Malheureusement, j'ai l'erreur
/Users/me/projects/myproj/test/test_stuff.js:11
var myProvider = _react.React.createElement(_index.MyProvider, null);
^
TypeError: Cannot read property 'createElement' of undefined
at Object.<anonymous> (/Users/me/projects/myproj/test/test_stuff.js:7:7)
Qu'est-ce que ça veut dire? J'importe React de 'réagir' avec succès, alors pourquoi React serait-il indéfini? C'est _react.React, quoi que cela veuille dire ...
Pour importer React do import React from 'react'
Vous ajoutez des crochets lorsque l'élément que vous importez n'est pas l'exportation par défaut dans ce module ou ce fichier. En cas de réaction, c'est l'exportation par défaut.
Cela peut s’appliquer à vos autres importations en fonction de la façon dont vous les avez définies.
import React, { Component } from 'react'
Cela a fonctionné pour moi. Je ne suis pas sûr de savoir pourquoi cela a résolu ma version de ce problème. Donc, si vous êtes tombé sur ce problème et que vous utilisez create-react-app comme référence, cette méthode d'importation React fera l'affaire. (à partir d'octobre 18, lol)
Pour ceux qui travaillent avec ReactJS avec TypeScript.
import * as React from 'react';