2015-10-03 4 views
17

Я пишу свое первое приложение в ответном native, и мой js-файл становится довольно большим. Каков правильный способ разбить файл.React Native: как разбить файл на несколько файлов

Если у меня есть что-то вроде

var MyClass = React.createClass({ 
    ... 
}) 

Могу ли я сохранить его в myclass.js и включить в какой-то команды в другой JS файл?

ответ

14

В общем, вы можете сделать следующее:

var MyClass = React.createClass({ 
    ... 
)} 

module.exports = MyClass; 

Таким образом, вы скажите, что должны быть доступны общественности.

А потом, в вашей бывшей большой файл, вы можете загрузить содержимое так:

var MyClass = require('./myclass.js'); 

Требовать возвращает объект, который ссылается на значение module.exports.

+0

приятно, спасибо. Можно ли экспортировать более одного класса? –

+0

Я так считаю. Назначьте MyClass в module.exports.MyClass, затем импортируйте его, вызвав require ('./ MyClass.js'). MyClass Вам нужно будет сделать это для каждого класса, который вы назначаете для экспорта. – Emile

+1

Это синтаксис nodejs? –

10

Вот обновленное решение с использованием import заявления (в последнем React-Native и вообще Javascript придерживаясь ECMAScript6 и позже):

file1 myClass.js:

export default class myClass {...} 

file2 app.js :

import myClass from './myClass'; 

Это основная версия, использующая один экспорт default. Вы также можете экспортировать экспорт named, который должен быть явно указан при импорте. Для получения дополнительной информации см. export и import.

Смежные вопросы