React Js код не работает [дубликат]

Используйте плагин maven-shade для упаковки всех зависимостей в одну uber-jar. Его также можно использовать для создания исполняемого банку, указав основной класс. Попробовав использовать maven-assembly и maven-jar, я обнаружил, что этот плагин лучше всего подходит для моих потребностей.

Я нашел этот плагин особенно полезным, так как он объединяет содержимое определенных файлов, а не перезаписывает их. Это необходимо, когда есть файлы ресурсов, которые имеют одно и то же имя в банках, и плагин пытается упаковать все файлы ресурсов

. См. Пример ниже

      <plugins>
    <!-- This plugin provides the capability to package the artifact in an uber-jar, including its dependencies and to shade - i.e. rename - the packages of some of the dependencies. -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>1.4</version>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                    <configuration>
                        <artifactSet>
                        <!-- signed jars-->
                            <excludes>
                                <exclude>bouncycastle:bcprov-jdk15</exclude>
                            </excludes>
                        </artifactSet>

                         <transformers>
                            <transformer
                                implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                <!-- Main class -->
                                <mainClass>com.main.MyMainClass</mainClass>
                            </transformer>
                            <!-- Use resource transformers to prevent file overwrites -->
                            <transformer 
                                 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                                <resource>properties.properties</resource>
                            </transformer>
                            <transformer
                                implementation="org.apache.maven.plugins.shade.resource.XmlAppendingTransformer">
                                <resource>applicationContext.xml</resource>
                            </transformer>
                            <transformer
                                implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                                <resource>META-INF/cxf/cxf.extension</resource>
                            </transformer>
                            <transformer
                                implementation="org.apache.maven.plugins.shade.resource.XmlAppendingTransformer">
                                <resource>META-INF/cxf/bus-extensions.xml</resource>
                            </transformer>
                     </transformers>
                    </configuration>
                </execution>
            </executions>
        </plugin>

    </plugins>
27
задан NVA 17 April 2016 в 02:20
поделиться

4 ответа

Редактирование: как ни странно, после наших комментариев выше, я проверил, действительно ли это версия базового модуля babel, я использую это в своей скрипке:

https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.24/browser.js

Второе, я перехожу к вашей версии выше, я получаю следующее:

Uncaught TypeError: Cannot read property 'keys' of undefined

Используйте React.createClass not ReactDOM.createClass и оберните несколько строк html в круглых скобках, например:

Working Пример: https://jsfiddle.net/69z2wepo/38998/

var Hello = React.createClass({
  render: function() {
    return (     
       <div>
        <h1>Hello World</h1>
        <p>This is some text</p>
       </div>
    )
  }
});

ReactDOM.render(
  <Hello name="World" />,
  document.getElementById('container')
);
35
ответ дан JordanHendrix 27 August 2018 в 15:29
поделиться

Я раньше не работал с React, но есть несколько вещей, которые, как я вижу, могут вызывать проблемы. Во-первых, React.createClass вместо ReactDOM.createClass. Во-вторых, вам нужно обернуть ваш html в круглые скобки:

var HelloWorld = React.createClass({
  render: function() {
    return (
      <div>
        <h1>Hello World</h1>
        <p>This is some text></p>
      </div>
    );
  }
});

Это должно заставить его работать

-3
ответ дан Alex R 27 August 2018 в 15:29
поделиться

Сегодня мой первый день с React, и я столкнулся с этой проблемой, когда попытался использовать Babel для перевода JSX!

Проблема - это версия, которую вы пытаетесь использовать, пожалуйста, используйте эту один вместо этого:

<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.25.0/babel.min.js"></script>

Не забудьте написать type="text/babel" в теге <script>, который вы напишете в JSX, чтобы позволить Babel перекрыть его для вас, если вы этого не сделаете, вы найдет эту ошибку (Поскольку я тоже столкнулся с этим: D) :

Uncaught SyntaxError: Unexpected token <

2
ответ дан Elharony 27 August 2018 в 15:29
поделиться

Просто чтобы быть ясным, так как другие ответы немного запутаны. Проблема заключалась в использовании «babel-core» вместо «babel-standalone». Просто найдите cdn для babel-standalone вместо этого.

https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.26.0/babel.js
3
ответ дан VIBrunazo 27 August 2018 в 15:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: