如何将 JavaScript 变量传递给 React 组件

2023-12-27

我对 React 有点陌生,在将一些变量从 Django 服务器传递到 React 组件时遇到一些问题。这是我所拥有的:

服务器是 Django,我有一个 url mydomain.com/testview/ ,它映射到views.py函数testview:

def testview(request):
    now = datetime.datetime.now()
    return render(request, 'testview.html', {
        'foo': '%s' % str(now),
        'myVar': 'someString'
    })

换句话说,运行 testview 将呈现模板文件 testview.html 并将使用变量 foo 和 myVar。

文件 testview.html 继承自 base.html,如下所示:

<!doctype html>
<html class="no-js" lang="">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
  </head>
  <body>
    {% block main %}{% endblock %}
  </body>
</html>

文件 test.html 基本上将所需的代码插入到 main 块中:

测试视图.html:

{% extends "base.html" %}
{% load render_bundle from webpack_loader %}

{% block main %}
<script type="text/javascript">
var foo = {{ foo }};  
var myVar = {{ myVar }};  
</script>
<div id="App"></div>
{% render_bundle 'vendors' %}
{% render_bundle 'App' %}
{% endblock %}

请注意,就在 div id="App" 之前,我创建了几个 javascript 变量 foo 和 myVar 并将它们设置为 Django 中的值。

现在做出反应:我的文件 App.jsx 如下所示:

import React from "react"
import { render } from "react-dom"

import AppContainer from "./containers/AppContainer"

class App extends React.Component {
  render() {
    return (
      <AppContainer foo={props.foo} myVar={props.myVar}/>
    )
  }
}

render(<App foo={window.foo} myVar={window.myVar}/>, document.getElementById('App'))

换句话说,我的 App.jsx 文件呈现 App 组件,传入 foo 和 myVar。在 App 类中,我假设这些是 props,所以我使用 props.foo 和 props.myVar 将它们传递给 AppContainer。我的类 AppContainer 位于组件文件夹内,如下所示:

import React from "react"

import Headline from "../components/Headline"

export default class AppContainer extends React.Component {
  render() {
    return (
      <div className="container">
        <div className="row">
          <div className="col-sm-12">
            <Headline>Running App! foo is {props.foo}, Here is a string: {props.myVar}</Headline>
          </div>
        </div>
      </div>
    )
  }
}

然而,这一切似乎都不起作用。我只得到一个空白页。我究竟做错了什么?


如果 foo 和 myVar 是字符串,你应该声明

var foo = "{{ foo }}";  
var myVar = "{{ myVar }}";  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 JavaScript 变量传递给 React 组件 的相关文章

  • HTML5 服务器端事件:EventSource 与包装的 WebSocket

    HTML5 服务器发送事件 SSE API 是否只是 HTML5 WebSocket 之上的受限制的 基于事件的 API 在我看来 一个EventSource只是一个WebSocket that Cannot send data 使用tex
  • 在 asp.net vb 中通过第一个下拉列表值填充第二个下拉列表

    我在使用 asp net vb 时遇到了一些问题 我想做的是有2个下拉框 第一个下拉菜单将有 1 2 3 例如 第二个下拉菜单将有 A 乙 C 默认情况下 但是 如果选择 1 我希望第二个下拉菜单自动选择 c 我不知道 JavaScript
  • JavaScript 变量赋值与 OR 对比 if 检查[重复]

    这个问题在这里已经有答案了 在 JavaScript 中 我最近意识到你可以使用 OR 赋值的逻辑运算符 我想知道这是否被认为是不好的做法 特别是 我有一些具有可选数组输入的函数 如果输入是null or undefined我应该将它设置为
  • jQuery 的 css() 在应用于滚动事件时滞后

    我正在尝试实现一个简单的 固定标题 表 我知道这在理论上只能用 CSS 来完成 但是当涉及到 OSX Lion 及其消失的滚动条时 它效果不佳 所以我用 jQuery 来做 方法很简单 只有1 5行代码 inbox scroll funct
  • 向对象添加元素

    我需要填充一个 json 文件 现在我有这样的东西 element id 10 quantity 1 我需要添加另一个 元素 我的第一步是使用该 json 将该 json 放入对象类型中cart JSON parse 现在我需要添加新元素
  • 提交前验证表单(比检查空字段更复杂)

    我有一个包含时间输入的表单 具体来说 开放时间和结束时间 当按下提交按钮时 它会转到一个 php 页面 其中这些输入将添加到数据库中 在允许提交表单之前我想检查一些事情 例如 我想确保开始时间早于 小于 结束时间 这是表格 Opens
  • jQuery Blur() 在 Chrome 上不起作用

    我在 MacOSX 上运行这个http jsfiddle net q84wv http jsfiddle net q84wv on Chrome最新版本 它不会工作 在 Firefox 上运行时它工作得很好 有什么线索吗 假设您想要aler
  • 使用 jQuery 仅从字符串末尾修剪空格

    我知道 jQuery trim 函数 但我需要的是一种仅从字符串末尾修剪空格的方法 而不是开头 So str this is a string 会成为 str this is a string 有什么建议么 Thanks 您可以使用正则表达
  • 光滑的轮播缓动示例

    我正在使用 Slick Carousel http kenwheeler github io slick http kenwheeler github io slick 但不知道如何合并不同的幻灯片切换 有人有例子可以分享吗 这是我目前拥有
  • JQuery DataTable 单元格从行单击

    我正在尝试在 jquery 数据表上实现一个函数 该函数返回单击行的第一列和第四列 我正在遵循这个示例 它允许我操作单击的行http datatables net examples api select single row html ht
  • Web SQL 数据库 + Javascript 循环

    我正在尝试解决这个问题 但我自己似乎无法解决 我正在使用 Web SQL DB 但无法让循环正常使用它 I use for var i 0 i lt numberofArticles 1 i db transaction function
  • 代码分割/反应可加载问题

    我正在尝试使用react loadable 将代码分割引入我的应用程序 我在一个非常简单的组件上尝试过 const LoadableComponent Loadable loader gt import components Shared
  • 将 JavaScript 引擎嵌入到 .NET 中 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 只是想知道是否有人尝试过将任何 js 引擎嵌入并实际集成到 net 环境中 我可以找到并实际使用 经过L
  • 使用 JavaScript 的计时器

    我想使用java脚本实现计时器 我想随着间隔的变化而减少计时器 Example假设我的计时器从 500 开始 我想要根据级别减少计时器 例如1 一级定时器应减1 且递减速度应较慢 2 2级定时器应递减2 递减速度应为中等3 3级定时器应减3
  • Window 与 Var 声明变量[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 中使用 var 和不使用 var 的区别 https stackoverflow com questions 1470488 difference between using v
  • 为什么我需要 $(document.body) 来使用 Mootools Element 方法扩展 document.body?

    因此 在尝试让我的应用程序在最新的 IE 上运行后 结果发现 IE 不喜欢以下代码 document body getElement className Firefox 和 Chrome 响应良好 但是document bodyIE 上没有
  • 在声明组件选择器时添加指令 - Angular 7

    我正在学习 Angular 并通过单击按钮动态创建组件 我正在尝试使用 Angular Material 的拖放功能来拖动这些创建的组件以对它们进行排序 我的基本组件 html 中有以下代码 div style margin 20px di
  • ThreeJS无法加载Json文件

    首先 我已经读过这个问题 https stackoverflow com questions 17201888 three js exporter export object not working with jsonloader r58没
  • Dojo/on 和捕获阶段

    有没有办法用 dojo on 在捕获阶段 而不是冒泡阶段 触发事件 我最终在这里寻找有关 on 的前身 dojo connect 的信息 就其价值而言 dojo connect 似乎不支持捕获阶段的事件侦听器 它的工作原理是将事件处理程序作
  • 获取淘汰赛中被点击元素的索引

    获取无序列表中单击元素的索引的最佳方法是什么 让我举个例子 假设我有以下 HTML 代码 ul li p p li ul 现在我有以下 javascript 代码来获取索引 self itemClicked function data it

随机推荐

  • 使用 Enzyme 测试 Redux 连接的组件

    使用酶测试 redux 连接组件时遇到问题 import React from react import shallow mount render from enzyme import configure from enzyme impor
  • 从其他应用程序调用服务的权限

    可能的重复 服务许可 https stackoverflow com questions 4967962 permission for services 从android启动服务时出现权限问题 https stackoverflow com
  • 具有赫维赛德/阶跃函数的神经网络学习算法

    是否有前馈神经网络训练算法的实现 或直接描述 该算法不使用 sigmoid 或线性挤压函数 而是使用不可微的函数 例如赫维赛德函数 我已经找到了一个关于这种算法的论文 http ieeexplore ieee org iel3 1059 7
  • 代理密钥 RSA SHA256 返回错误的签名类型

    我正在将 vscode 开发容器与 docker 一起使用 但在与容器共享 git 时遇到问题 我已经设置了 git ssh add ssh agent 如下所示here https code visualstudio com docs r
  • 从多 mips 中获取结果

    我是汇编语言的新手 我对乘法感到非常困惑 我正在阅读快速教程here http logos cs uic edu 366 notes mips 20quick 20tutorial htm 死链接 网络存档在这里 https web arc
  • 为什么 Postgres 中的坏行估计速度很慢?

    是什么让错误的行估计成为 SQL 查询性能的痛点 我很想知道其内部原因 通常 错误的行估计实际上会选择正确的计划 而好查询和坏查询之间的唯一区别是估计的行数 为什么经常出现如此巨大的性能差异 是因为 Postgres 使用行估计来分配内存吗
  • 如何从数据库中获取数据并在 PHP 中显示?

    如何使用 php 从数据库获取数据并显示它 数据库表有列 标记为ID Number ID 是唯一且固定的 而 Number 只是一个非唯一的数字 如果有人来访http example com show php ID 32 and show
  • 行尾短语的正则表达式

    我正在抓取一个文本块 在该块中将有一行包含以 WITH PASSWORD kEqHqPUd 结尾的短语 其中 kEqHqPUd 是动态生成的密码 用于仅获取其中密码的简单正则表达式是什么 我正在使用 PHP preg match WITH
  • 在 C# 中验证 DLL

    我有一个 exe 它使用 Castle Windsor 来实现插件机制 我需要验证我加载的插件是否来自我 而不是一些恶意代码 我相信我需要使用非对称密钥 可能是 SNK 对 exe 和 dll 进行签名 首先 这是正确的吗 我该怎么做 其次
  • Android Clipboard.getText() 已弃用;那么如何获取其中的文本项呢?

    这工作正常 准确地向我展示了放入 Android 剪贴板的最后一个字符串是什么 它恰好是euswcnmst Log w clip clipboard getText toString But getText已弃用clipboard对象 同时
  • Apple 推送通知 - PHP - SSL 操作失败,代码 1

    在过去的几天里 当我们使用套接字连接到生产服务器上的 APN 服务器时 我们遇到了一些奇怪的 PHP 行为 大多数情况下 有效负载的推送不会出现任何错误 并且客户端会收到通知 然而 在某些情况下 我们开始收到 PHP 错误 即使我们收到错误
  • 如何在 C++ 中克隆对象?或者还有其他解决方案吗?

    我编写了一个堆栈和队列实现 基于链表 有一个栈 bigStack 比如我分开bigStack 例子 stackA and stackB I pop 一个节点来自bigStack I push in stackA 以同样的方式 我push i
  • 如何使用子进程Popen.communicate()方法?

    我正在尝试将 bash 命令的标准输出作为 Python 中的字符串获取 下列的Popen https docs python org 2 library subprocess html subprocess Popen文档 我已经尝试过
  • 如何在 Django 中聚合单个查询集?

    简短的介绍 给定一个查询集myQueryset 我该如何选择max myfield 没有实际检索所有行并执行max在Python中 我能想到的最好的是max r myfield for r in myQueryset values myfi
  • CSS3中有没有办法为列指定不同的宽度?

    我想使用 CSS 来呈现两列布局 我正在使用的标记是这样的 div style margin left 20px margin top 20px div picture box div div name div div 有没有办法让一列的宽
  • 是否可以在越狱的ios上使用外部键盘模拟触摸事件?

    是否可以在 iOS 越狱以及越狱涉及的所有元素上模拟特定屏幕坐标中的触摸事件 按下物理外部键盘 通过相机连接套件或蓝牙的 USB 上的特定按键 我会用它来用脚按下应用程序中的按钮 幅度 我想使用键盘作为脚踏开关 仅供私人使用 没有应用商店或
  • 包含 if 和 .each() 的 jQuery 函数在 IE7 中非常慢

    我基本上搜索具有特定数据属性的元素 因此我循环遍历具有可能具有这些数据属性的类的所有元素 我使用 jQueryeach 函数进行循环 并且已经阅读并体验到 与其他常见浏览器 如 Firefox Chrome 或 Safari 相比 它在 I
  • 如何在没有显示器的情况下使用gui启动linux? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我遇到了一个问题 我有一台安装了redhat enterprise 5 5的服务器 该服务器上正在运行一个 Qt 程序 所以我应该做的是打开我的服务器
  • Android Marshmallow:如何避免无互联网接入时 Wi-Fi 掉线

    我有一台运行 MarshMallow 6 0 的 Nexus 5x 它与无法访问互联网的设备的 Wi Fi 关联 Android 不断断开连接 甚至在尝试几次后也不会自动重新连接 因为它检测到没有互联网访问 即使没有互联网接入 如何强制 A
  • 如何将 JavaScript 变量传递给 React 组件

    我对 React 有点陌生 在将一些变量从 Django 服务器传递到 React 组件时遇到一些问题 这是我所拥有的 服务器是 Django 我有一个 url mydomain com testview 它映射到views py函数tes