将变量(字符串)的值从剃刀视图传递到React组件

时间:2018-01-11 07:24:55

标签: c# .net reactjs razor

我想知道您是否有任何关于将字符串从剃刀视图传递到React组件的建议?

int n=5;
for(int count = 1 ; count <= 3 ;count++)
{
   for(int i=n ; i > n-5 ; i++)
    {
      push_on_stack(i);
    }
 n=n+5;
}
$pattern1= '%\b((https?://)|(www\.)|(^[\D]+\.))[^,\s()<>]+(?:\([\w\d]+\)|([^,[:punct:]\s]|/))%';
$pattern2= '%\b^((https?://)|(www\.)|(^[a-z]+\.))([a-z0-9-].?)+(:[0-9]+)?(/.*)?$%';

1 个答案:

答案 0 :(得分:4)

据我所知,您的c#代码在服务器中得到评估,那时,反应不存在,然后代码将传递给浏览器,然后做出反应将呈现它。

所以我基本上你不能像你想要的那样访问你的普通变量,但是你可以将你的c#值分配给一个全局的javascript变量,这样你以后可以在浏览器中找到它:

说这是你的c#代码:

<div id="widget">
      <p>@vm.Copy</p>
   </div>

添加如下内容:

<div id="widget">
      <p>@vm.Copy</p>

      <script>
        var window.Copy = "@vm.Copy"; // we need the quotation so javascript doesn't compile it as a refrence, rather as a string
        console.log('Copy',Copy);
      </script>
   </div>

然后在你的反应代码中你应该能够把它拿起来:

 render() {
    const {  } = this.props,   
    return (  
      <p>{window.Copy}</p>           
    )
  }