Следуя руководству here, мне удалось получить пакет webpack для моего пакета для меня, и он работает для предварительного рендеринга на стороне сервера, например:React.NET, Webpack - «ReactDOM» не определен (на стороне клиента)
@Html.React("Components.myComponent",
New With {
.initialData = Nothing
})
@Html.ReactInitJavaScript()
Это правильно отображать мой компонент в браузере, но как только клиент берет на себя, я получаю ошибку 'ReactDOM' is undefined
Я установил react-dom
используя npm install react-dom --save-dev
Я попытался require
ReactDOM , f рвые в .jsx файл, содержащий мой компонент, то в client.js файл, который WebPack строит из:
//myComponent.jsx
var React = require('react');
var ReactDOM = require('react-dom');
или
//client.js
var ReactDOM = require('react-dom');
var Components = require('expose?Components!./src');
Но я все еще получаю ту же ошибку.
Если добавить скрипты react
и react-dom
прямо над моей WebPack скомпилирован клиента JavaScript, то проблема уходит:
//index.html
<script src="https://www.facebook.com/react-0.14.0.min.js"></script>
<script src="https://www.facebook.com//react-dom-0.14.0.min.js"></script>
<script src="~/Scripts/webpack/build/client.bundle.js"></script>
Так как я могу получить Webpack правильно включить эти скрипты в связке клиента?
EDIT
Я имел следующий externals
в моей webpack.config.js
, но удаление их, кажется, не имеет никакого значения.
externals: {
// Use external version of React (from CDN for client-side, or
// bundled with ReactJS.NET for server-side)
react: 'React'
}
Я думаю, внешние есть, так что вы можете сценарии на основе использования CDN, поэтому, возможно, я overthinking этот и должен просто оставить CDN на основе реагировать сценарии на мой взгляд?
Да, это так! я работал вокруг него, но это имеет большой смысл сейчас, спасибо :) –