问题标签 [isomorphic-javascript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
695 浏览

node.js - Reactjs没有在第一页加载时从数据库加载动态内容

我对 ReactJS 相当陌生,并且使用 NodeJS 和 Express 来构建一个小型 SPA 应用程序。我的要求是在初始页面加载时从 mysql 加载数据。脚本看起来像这样:

这个脚本可以工作,但问题是在页面加载之后,请求被发送到服务器,然后 UI 得到更新的响应。我假设这对 SEO 没有帮助。相反,我希望数据首先可用,然后呈现 UI。

其次,我也尝试使用node-mysql但因为我正在创建同构 javascript 应用程序,所以凭据是可见的。不仅如此,浏览器不能使用 TCP/IP,所以它仍然不能工作。所以这是一个教训。

如果我必须创建一个博客应用程序,它将非常动态。在这种情况下 SEO 将如何工作?还是同构javascript仅意味着静态内容?

我对这个概念有点混淆了。有人可以指导我吗?

0 投票
1 回答
101 浏览

javascript - 反应路由器 v0.13.3 或 v1.0.0-beta3?

我想使用 react、flux (redux) 和 react-router 构建一个基本的应用程序。它将是一个同构(通用)应用程序。我对我应该使用哪个 react-router 版本感到困惑?

0.13.3 或 1.0.0-beta3。

问是因为 1.0 很酷,对同构应用程序有更好的支持,并且还简化了其他事情,但它仍处于测试阶段。

谁知道1.0什么时候出?

0 投票
1 回答
52 浏览

html - 为什么我的 Meteor UserId 没有与此代码一起显示?

我想(出于好奇)在尝试使用 Meteor 应用程序时查看我的 userId。我正在尝试以这种方式显示它:

HTML:

Javascript:

单步浏览 CDT 中的 .js,我看到 Meteor.userId 的值是“未定义”。我没有经过身份验证 - 只需运行仍然安装了不安全包的应用程序。这就是 userId 未定义的原因吗?

0 投票
2 回答
97 浏览

reactjs - 带有包含服务器代码的反应类的 Webpack 配置

我有一个同构的反应/通量(alt)实现。

我正在尝试将项目从 browserify 转换为 webpack。

考虑到我的 React 类可能如下所示:

我想在运行 webpack 时避免捆绑整个“服务器”文件夹,但是当我这样做时(通过加载器配置中的排除),事情会以一种奇怪的方式中断:

如果我返回“服务器”,我会在转换 mongojs 的依赖项(“net”等)时遇到错误,我认为这不是正确的方向。

如果我删除 react-routes.js 中对我的反应类的所有要求,则 webpack 能够成功完成。由此我了解到问题确实在于我的类中有服务器代码。

在 browserify 中,我可以通过使用 getData() 函数中的“数据访问”和其他服务器文件的需求来克服这个问题,但是使用 webpack 时我到目前为止还没有运气。

我的忽略/排除规则应该是什么,我应该如何实施它们?

谢谢。

0 投票
0 回答
358 浏览

node.js - 如何故障排除和修复 React.js 校验和无效警告

我在这里使用 Isomoprhic React Starter 工具包项目构建一个同构反应应用程序:https ://github.com/kriasoft/react-starter-kit

但是我遇到了一个神秘的警告,我还没有弄清楚如何解决问题。

React 似乎可以在我的浏览器中很好地渲染代码,但显然在服务器上渲染存在一些问题。

这是我得到的警告:

warning.js:45Warning:React 尝试在容器中重用标记,但校验和无效。这通常意味着您正在使用服务器渲染,并且在服务器上生成的标记不是客户端所期望的。React 注入了新的标记来补偿哪些工作,但是您已经失去了服务器渲染的许多好处。相反,找出为什么生成的标记在客户端或服务器上是不同的:

这是我的组件中的代码,它是问题的根源:

0 投票
1 回答
280 浏览

webpack - webpack中的SCSS解析错误

我在同构 javascript 配置中的 webpack 配置有问题,如果我在其中运行:

抛出的错误:

这是我的 webpack 配置:

我打电话给要求

0 投票
1 回答
13893 浏览

reactjs - react-engine vs 其他模板引擎

我想使用 paypal 的 React 引擎(https://github.com/paypal/react-engine),但我有一些疑问:

与 Handlebars 等其他模板引擎相比有什么好处?

为什么要上传 .jsx 文件,而不是(jsx 预编译/转换的).js 文件?(这个应该更快,因为不必处理服务器上的转换)。

我一直在研究,但我很困惑。

谢谢

0 投票
1 回答
381 浏览

javascript - 在渲染客户端之前应用 css(同构)

我正在运行一个使用 React 和 webpack 的同构应用程序,这一切都很好。我正在努力处理的一件事是在渲染组件之前预加载 css。

我一直在尝试使用导入我的 sass 文件(所以 webpack 可以 sass=>css)

但是,这仍然仅在加载客户端后才应用。

我似乎可以避免这种情况的唯一方法是使用链接中的旧样式表,这意味着我将失去所有 webpack 的 CSS 好东西。

0 投票
1 回答
797 浏览

javascript - 如何在同构反应应用程序中调用窗口函数?

在同构反应应用程序中,我们为客户端和服务器使用相同的代码库。但是如何从服务器(节点 js)调用内部调用 window.function()。

如果我尝试在第三方库中调用某些函数,则会抛出错误,因为 windows 未定义

0 投票
1 回答
181 浏览

ecmascript-6 - 同构应用程序和特定于浏览器的代码

我正在使用 webpack、React、ES6 和 Fluxible 构建一个同构应用程序,并且遇到了以下关于浏览器特定模块导入的问题。

例如,我想使用我的 React 组件中加载的图像。代码如下所示:

但是,显然,它首先尝试在服务器端进行导入,并且代码惨遭失败并出现错误:

问题是——我应该采取什么方法使代码只包含在浏览器端版本中?我想我正在寻找类似的东西:

谢谢!