经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » React » 查看文章
react中定义变量并使用方式
来源:jb51  时间:2023/2/15 9:19:16  对本文有异议

react定义变量并使用

这里面涉及到了

  • 1、变量如何定义
  • 2、变量如何进行改变
  • 3、方法如何调用

都写有详细的注释大家可详细观看适合刚学习react的新同学

  1. class Packaging extends React.Component{ // react 类组件
  2. constructor(props) {
  3. super(props);
  4. this.state = {
  5. // 进行变量定义(会vue的同学:这个地方就相当于 data 的return里所定义的)
  6. // 例如
  7. name:'定义name'
  8. };
  9. this.getNameData();// 调用方法
  10. }
  11. // 定义方法-写这个方法是为了给大家操作一下怎么改变定义的数据
  12. getNameData() {
  13. http.get('接口名称').then(res => {
  14. // 第一种
  15. this.setState({ // 使用this.setState来进行改变变量
  16. name: res.data.name
  17. });
  18. console.log(this.state.dataObj) // 打印不到的
  19. // 第二种
  20. this.setState({
  21. name: res.data.name
  22. },() => {
  23. console.log(this.state.dataObj) // 可以打印到
  24. })
  25. }).catch(error => {
  26. console.error(error)
  27. })
  28. }
  29. render() {
  30. return <div className="className">// className定义div的class名称
  31. {this.state.name}
  32. </div>
  33. }
  34. }

react全局变量的设置

新建一个 util文件夾 ---> tool.jsx

  1. window._= {
  2. ?? ??? ?/**
  3. ?? ??? ? * 存储localStorage
  4. ?? ??? ? */
  5. ?? ??? ?setStore:(name, content) =>{
  6. ?? ??? ??? ?if (!name) return;
  7. ?? ??? ??? ?if (typeof content !== 'string') {
  8. ?? ??? ??? ??? ?content = JSON.stringify(content);
  9. ?? ??? ??? ?}
  10. ?? ??? ??? ?window.localStorage.setItem(name, content);
  11. ?? ??? ?},
  12. ?? ??? ?/**
  13. ?? ??? ? * 获取localStorage
  14. ?? ??? ? */
  15. ?? ??? ?getStore:(name) => {
  16. ?? ??? ??? ?if (!name) return;
  17. ?? ??? ??? ?return window.localStorage.getItem(name);
  18. ?? ??? ?},
  19. ?? ??? ?/**
  20. ?? ??? ? * 清除localStorage
  21. ?? ??? ? */
  22. ?? ??? ?clearStore:() => {
  23. ?? ??? ??? ?window.localStorage.clear();
  24. ?? ??? ?},
  25. ?? ??? ?
  26. ?? ??? ?getQueryStringByName: function (name) {
  27. ?? ??? ??? ?var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  28. ?? ??? ??? ?var r = window.location.search.substr(1).match(reg);
  29. ?? ??? ??? ?var context = "";
  30. ?? ??? ??? ?if (r != null)
  31. ?? ??? ??? ??? ?context = r[2];
  32. ?? ??? ??? ?reg = null;
  33. ?? ??? ??? ?r = null;
  34. ?? ??? ??? ?return context == null || context == "" || context == "undefined" ? "" : context;
  35. ?? ??? ?}
  36. ?? ?
  37. }

在入口文件app.jsx里面引入

  1. import ?"util/tool.jsx";

然后在其余的组件里面就可以访问到这个变量对象:_

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号