小编c-c*_*vez的帖子

导航到新页面后,停止到达路由器向下滚动页面

当我导航到新页面时,“到达路由器”向下滚动到页面内容的标题上方(如果内容足够长)。我假设这是为了可访问性,但对于我的应用程序不是必需的,并且实际上是很麻烦的。可以禁用此行为吗?

请注意,我所说的是“到达路由器”而不是“反应路由器”。

到达路由器

reactjs reach-router

10
推荐指数
2
解决办法
1926
查看次数

获取行计数,包括sql server中的列值

我需要获取查询的行数,并在一个查询中获取查询的列.计数应该是结果列的一部分(对于所有行,它应该是相同的,因为它是总数).

例如,如果我这样做: select count(1) from table 我可以有总行数.

如果我这样做: select a,b,c from table 我将获得查询的列的值.

我需要的是以一种非常有效的方式在一个查询中获取计数和列值.

例如: select Count(1), a,b,c from table 没有分组,因为我想要总数.

我找到的唯一方法是执行临时表(使用变量),插入查询的结果,然后计数,然后返回两者的连接.但如果结果得到数千条记录,那就不会非常有效.

有任何想法吗?

sql sql-server

6
推荐指数
2
解决办法
3万
查看次数

为什么我们在 React 中使用 BrowserRouter?

我是 React 的新手。我想知道反应路由有多少种类型以及每种类型的用途。

javascript reactjs react-router

6
推荐指数
1
解决办法
9514
查看次数

反应 - onKeyDown 事件

我正在 React 中创建自己的灯箱,但在实现 keyDown 事件时遇到了问题。当我打开图像时,我想要a图像 - 1 的d键和图像 + 1 的键。我只实施console.log(e.key)检查是否一切正常。我发现了一个问题,即我的 KeyDown 事件仅在我将焦点放在向左或向右按​​钮上时才起作用。当我点击照片键不起作用。

灯箱:

<div 
  onKeyDown={this.nextButtonImage} 
  onClick={this.closeLightbox} 
  className="lightbox-container">
  <div className="lightbox">
    <button onClick={this.closeLightbox} className="lg-close">
      <i className="fas fa-times" />
    </button>
    <button onClick={this.prevImage} className="lg-arrows lg-left">
      <i className="fas fa-caret-left" />
    </button>
    <button onClick={this.nextImage} className="lg-arrows lg-right">
      <i className="fas fa-caret-right" />
    </button>
    <img src={this.images[this.state.openImage].url} alt="" />
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

keyDown 事件:

nextButtonImage = (e) => {
  console.log(e.key);
}
Run Code Online (Sandbox Code Playgroud)

html javascript lightbox reactjs

5
推荐指数
1
解决办法
558
查看次数

获取MenuItem材质ui的值

我正在为菜单和菜单项使用Material UI。我正在尝试获取菜单项的值,但是它不起作用。

这是我的代码:

<Menu value= { this.state.selectedItem }>
  <MenuItem onClick={this.listClicked} 
    leftIcon={
      <FontIcon 
        className="material-icons"
        style={{ color: 'white', margin: '0' }}>
          format_list_bulleted
      </FontIcon>
    }
  />     
  <MenuItem onClick={this.settingClicked} 
    leftIcon={
      <FontIcon 
        className="material-icons"
        style={{ color: 'white', margin: '0' }}>
          settings
      </FontIcon>
    } 
  />
</Menu>

public listClicked = (value) => {
  this.setState({
    selectedItem :value
  })
  console.log(this.state.selectedItem)
}
Run Code Online (Sandbox Code Playgroud)

我没有得到值,并且在导航器的控制台中有一个对象。

你能帮助我吗?

谢谢

reactjs material-ui

4
推荐指数
6
解决办法
1万
查看次数

使用 Contains 构建 Lambda 表达式

我在将简单 linq 查询转换为 Lambda 表达式时遇到问题。

我的查询如下所示:

int[] array = List<int> array2 = sql.OfType<Table1>().Select(x=>x.ID).Take(10).ToList();
var result = sql.OfType<Table1>().Where(x => array.Contains(x.ID)).Take(10).ToList();
Run Code Online (Sandbox Code Playgroud)

最终结果应该是:

static void DynamicSQLQuery<T>(IQueryable<T> sql, string fieldName)
{
    List<int> array = sql.OfType<T>().Select(SelectExpression<T>(fieldName)).Take(10).ToList();
    var result = sql.OfType<T>().Where(InExpression<T>(fieldName, array)).Take(10).ToList();
}
Run Code Online (Sandbox Code Playgroud)

班级

public class Table1
{
    public int ID { get; set; }
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我已经转换了第一个 lambda:

public static Expression<Func<T, int>> SelectExpression<T>(string fieldName)
{
    ParameterExpression param = Expression.Parameter(typeof(T), "x");
    MemberExpression selection = Expression.PropertyOrField(param, fieldName);
    var lambdaExp = Expression.Lambda<Func<T, …
Run Code Online (Sandbox Code Playgroud)

c# linq-to-entities expression

4
推荐指数
1
解决办法
4693
查看次数

Laravel ReactJs:更改我的 js(reactjs) 文件后未反映更改

我使用的是ReactjsLaravel。在这里我改变了我的阵营组件的一些变化,当我刷新我的浏览器,然后更改都不会显示。

文件:

  1. 资源/视图/welcome.blade.php

    <!doctype html>
    <html lang="{{ app()->getLocale() }}">
        <head>
            <meta charset="utf-8">
            <meta http-equiv="X-UA-Compatible" content="IE=edge">
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>arjunphp.com | Laravel 5.6 with React JS</title>
            <link href="{{asset('css/app.css')}}" rel="stylesheet" type="text/css">
        </head>
        <body>
            <div id="example"></div>
            <script src="{{asset('js/app.js')}}" ></script>
        </body>
    </html>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 资源/资产/js/app.js

    /**
     * First we will load all of this project's JavaScript dependencies which
     * includes React and other helpers. It's a great starting point while
     * building robust, powerful web applications using React + Laravel.
     */ …
    Run Code Online (Sandbox Code Playgroud)

javascript laravel reactjs react-material

4
推荐指数
2
解决办法
9608
查看次数

在Javascript中,如何有条件地更新对象的属性?

我已经看过这篇文章,并想知道是否有一种方法可以使用javascript编写一个函数,可以通过使用具有新值的另一个对象来有条件地更新对象的所有属性?

说我有这个对象:

let oldObj = {test1: 'valueTest1',test2: 'valueTest2',test3: 'valueTest3' };
Run Code Online (Sandbox Code Playgroud)

我想使用另一个对象传递的属性更新其值,如下所示:

let newObj = {test2: 'newValue2'}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我只想更新属性"test2".如果我知道我要更新的属性并且我事先知道原始属性,我将使用:

oldObj = {
  ...(newObj.test1) && {test1: newObj.test1} || {test1: oldObj.test1},
  ...(newObj.test2) && {test2: newObj.test2} || {test2: oldObj.test2},
  ...(newObj.test3) && {test3: newObj.test3} || {test3: oldObj.test3},
};
Run Code Online (Sandbox Code Playgroud)

意思是我只会在属性进入新对象时更新值,但当然我必须添加与对象中的属性一样多的条件.

这种方法很好,但它没有推广,所以如果对象有10个属性,我将不得不写出10个条件.

有没有办法编写一个可以有条件地更新属性的函数,这样我就不必编写10个(或更多)条件?

javascript

3
推荐指数
1
解决办法
283
查看次数

蚂蚁设计 - 在“取消”和“X”关闭按钮上重置模态值 - API RESPONSE BASE REACT JS

使用.map,我映射了所有卡片,并且每张卡片都有一个编辑按钮,因此当我单击编辑按钮时,它会打开一个具有输入值表单的模态 (antd)。值与 API 绑定,当我打开任何卡片模型时,它会在输入中显示完美的值。

问题是,当我单击任何其他卡片的编辑按钮时,它再次显示相同的值(以前的弹出值)

代码:

{surveys.length > 0 && surveys.map((survey, i) => (
  <Col className="gutter-row" xs={24} sm={12} md={12} lg={6} xl={6} key={survey.publicID}>
    <Card
      cover={<Link to='/survey'><img alt="example" src={ survey.imagePath || "https://gw.alipayobjects.com/zos/rmsportal/JiqGstEfoWAOHiTxclqi.png"} /></Link>}
      actions={[
        <img className="icons-svgs" src="/svg/Share.svg" onClick={() => this.onHandleShareSurvey(survey)} />, 
        <img className="icons-svgs" src="/svg/Edit.svg" onClick={() => this.onHandleEditSurvey(survey)} />, 
        <img className="icons-svgs" src="/svg/Duplicate.svg" onClick={()=>this.onHandleDuplicateSurvey(survey)} />, 
        <img className="icons-svgs" src="/svg/Delete.svg" onClick={() => this.onHandleDeleteSurvey(survey)}/>
      ]} >
      <Row type="flex" align="middle">
        <Col span={18}>
        <Link to='/survey'>
          <Meta
            title={survey.Name}
            description={survey.Description}
          />
        </Link>
        </Col>
        <Col type="flex" span={6} align="middle">
          <span onClick={()=> …
Run Code Online (Sandbox Code Playgroud)

html javascript reactjs antd

3
推荐指数
2
解决办法
1万
查看次数

在 ag-grid react 中添加 react-router-dom 链接

如何在 ag-grid 中替换 react-router-dom 的 with。它使页面重新加载,而不是伪装成单页应用程序。

我试过这个,但它不起作用

cellRenderer:  (params)=> {
  return <Link to={`/?info=${params.data.Id}`}>"+{params.value}+"</Link>, 
Run Code Online (Sandbox Code Playgroud)

是否有可能我们可以使用 Link 而不是

cellRenderer:  function(params){
  return "<a href='/?info=" + params.data.Id+ "'>"+params.value+"</a>";},
Run Code Online (Sandbox Code Playgroud)

使用 Link 时,它会抛出错误:

错误:ag-Grid:在绘制行的中间时无法获取网格以绘制行。您的代码可能在网格处于渲染阶段时调用了网格 API 方法。为了克服这个问题,将 API 调用置于超时状态,例如调用 setTimeout(function(){api.refreshView(),0}) 而不是 api.refreshView()。要查看导致刷新的代码部分,请检查此堆栈跟踪。

堆栈跟踪中的错误指向下面的代码,但使用元素它可以正常工作:

===> GetAPI(){ var url = xxxxxxxxxxx; axios.get(url).then(response => { if (response.status == 200) { this.setState({patients: response.data, loading: false }); } }) .catch(e => console .log('获取费用列表时出错:在 Listing/index.js > 错误:', e.message,'\n for user : ',this.props.auth.user.email)) }.

reactjs ag-grid-react react-router-dom

3
推荐指数
1
解决办法
2268
查看次数

React Native-Expo:fontFamily'SimpleLineIcons'不是系统字体,并且尚未通过Font.loadAsync加载

所以我在Android设备/模拟器上收到此错误:

模拟器上的错误消息

另一方面,在iOS上,它可以很好地编译并且simple-line-icons可以正确显示。

我正在运行最新版本的Expo。

我的package.json:

{
  "name": "FamScore3",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "react-native-scripts": "1.14.0",
    "jest-expo": "^31.0.0",
    "react-test-renderer": "16.3.1"
  },
  "main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
  "scripts": {
    "start": "react-native-scripts start",
    "eject": "react-native-scripts eject",
    "android": "react-native-scripts android",
    "ios": "react-native-scripts ios",
    "test": "jest"
  },
  "jest": {
    "preset": "jest-expo"
  },
  "dependencies": {
    "@firebase/auth": "^0.7.6",
    "@firebase/database": "^0.3.6",
    "axios": "^0.18.0",
    "metro-react-native-babel-preset": "^0.45.0",
    "expo": "^31.0.4",
    "firebase": "^5.5.1",
    "react": "16.5.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-31.0.1.tar.gz",
    "react-native-elements": "^0.19.1",
    "react-native-material-dropdown": "^0.11.1",
    "react-native-router-flux": "^4.0.1",
    "react-redux": "^5.0.7",
    "redux": "^4.0.0",
    "redux-thunk": "^2.3.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

我的app.json:

{ …
Run Code Online (Sandbox Code Playgroud)

javascript react-native expo

3
推荐指数
4
解决办法
2823
查看次数

反应改变页面标题

我知道我可以使用react-document-titlereact-helmet来更改页面标题。但我有一个问题。

react-document-title 可以设置默认页面标题,例如:

function App() {
  // Use "My Web App" if no child overrides this
  return (
    <DocumentTitle title='My Web App'>
      <SomeRouter />
    </DocumentTitle>
  );
}
Run Code Online (Sandbox Code Playgroud)

反应头盔可以做同样的事情吗?

另外,从github上的例子来看,两者都使用了静态标题。他们可以像 youtube 那样标题不是静态的吗?

如果您在 YouTube 主页,页面标题将显示 Youtube。
如果您正在观看视频,页面标题会显示带有 的视频名称-youtube

显然,- youtube是静态的,而视频的名称是动态的。

目标是我想在 router.js 中设置默认标题(如react-document-title),然后如果组件需要标题(默认标题加上组件的页面标题),请更改页面标题。如果不需要,请使用以下代码使用默认标题:

function App() {
  // Use "My Web App" if no child overrides this
  return (
    <DocumentTitle title='My Web App'>
      <Router path="/" component={Home} />
    </DocumentTitle>
  );
}

function HomePage() …
Run Code Online (Sandbox Code Playgroud)

react-router react-helmet

1
推荐指数
1
解决办法
8628
查看次数

如何在angular6中使用Amcharts4?

我正在angular6项目中实施amcharts4 “ Animated-Gauge”演示。

这是我的代码:

StackBlitz

在StackBlitz在线编辑器上运行良好,但是在我的angular6项目中实现时抛出错误。它在第25行抛出了错误警告,这是

var axis = chart.xAxes.push(new am4charts.ValueAxis());
Run Code Online (Sandbox Code Playgroud)

当我将鼠标悬停在第25行错误时,就会抛出此错误。

Argument of type 'ValueAxis<AxisRenderer> is not assignable to parameter'
of type Axis<AxisRendererCircular>
Run Code Online (Sandbox Code Playgroud)

这是我的错误图片:

在此处输入图片说明

我该如何解决这个问题?

javascript charts amcharts angular6

1
推荐指数
1
解决办法
642
查看次数