import React, { Component, PropTypes } from 'react';
Это говорит:
Импортирует экспорт по умолчанию из
blockquote>'react'
под именемReact
и импортирует именованные экспортированные файлыComponent
иPropTypes
под теми же именами.Это объединяет два общих синтаксиса, которые вы, вероятно, видели
import React from 'react'; import { Component, PropTypes } from 'react';
. Первый используется для импорта и имени экспорта по умолчанию, второй для импорта указанным именованным экспортом.
Как правило, большинство модулей будут либо предоставлять единый экспорт по умолчанию, либо список именованного экспорта. Для модуля, как правило, предоставляется как экспорт экспорта, так и экспорт по умолчанию. Тем не менее, в случае, когда есть одна функция, которая чаще всего импортируется, но также дополнительные вспомогательные функции, это допустимый проект для экспорта первого в качестве значения по умолчанию, а остальные - для имени экспорта. В таких случаях вы использовали бы синтаксис
import
, на который вы ссылаетесь.Другие ответы находятся где-то между неправильным и запутанным, возможно, потому, что документы MDN в момент запроса этого вопроса были неправильными и запутанными , MDN показал пример
import name from "module-name";
и сказал, что
name
является «именем объекта, который получит импортированные значения». Но это вводит в заблуждение и неверно; в первую очередь, есть только одно значение импорта, которое будет «получено» (почему бы просто не сказать «назначено» или «используется для ссылки»)name
, а значение импорта в этом случае является экспорт по умолчанию из модуля.Другой способ объяснить это - отметить, что указанный импорт точно идентичен
import { default as name } from "module-name";
, а пример OP точно идентичен
import { default as React, Component, PropTypes } from 'react';
В документации MDN был показан пример
import MyModule, {foo, bar} from "my-module.js";
и утверждалось, что это означает
Импортировать содержимое всего модуля, причем некоторые из них также явно по имени. Это вставляет
blockquote>myModule
(sic),foo
иbar
в текущую область. Обратите внимание, чтоfoo
иmyModule.foo
совпадают, какbar
иmyModule.bar
. Что сказано в MDN и какие другие ответы утверждают на основании неправильной документации MDN, является абсолютно неправильным и может основываться на более ранней версии спецификации. Что это на самом деле делает
Импортировать экспорт модуля по умолчанию и некоторые явно названные экспорта. Это вставляет
< / blockquote>MyModule
,foo
иbar
в текущую область. Названия экспортаfoo
иbar
- not , доступные черезMyModule
, который является экспортом по умолчанию , а не какой-либо зонтик, охватывающий все экспортные данные.(Экспорт по умолчанию - это значение, экспортированное с помощью синтаксиса
export default
, которое также может бытьexport {foo as default}
.)Авторы документации MDN, возможно, путались со следующей формой :
import * as MyModule from 'my-module';
Импортирует весь экспорт из
my-module
и делает их доступными под именами, такими какMyModule.name
. Экспорт по умолчанию также доступен какMyModule.default
, поскольку экспорт по умолчанию - это не что иное, как другой экспорт с именемdefault
. В этом синтаксисе нет способа импортировать только подмножество именованного экспорта, хотя можно импортировать экспорт по умолчанию, если он есть вместе со всеми указанными экспортами с помощьюimport myModuleDefault, * as myModule from 'my-module';
заглавные слова в приведенной ниже команде означает, что вам нужно указать, как требуется.
geth --datadir = "СПРАВОЧНИК БЛОКА ГЕНЕЗИСА" --rpc --rpcport ПОРТ-НОМЕР --rpccorsdomain "URL-адрес ВЕБ-САЙТА"
sample: geth --datadir = "" --rpc --rpcport 8545 --rpccorsdomain = "*" --rpcapi = "miner, web3, debug, net, eth" console 2 >> logger.log