我遵循了有关从GIT HUB下载和安装Web文件的在线教程。我进入主题:启动我们的静态网站,系统提示我输入命令来下载和安装Web文件。但是,当我输入命令yarn install时,出现以下提示:bash:yarn:命令未找到
...我的问题是,还有其他人遇到过这个问题吗?我正在Windows 10上使用GIT Bash命令提示符。
在此先感谢您的协助。
我有一个 react JS 文件,我正在尝试将数据绑定到下拉列表。数据存储在以下测试 API/json 文件中:https : //api.myjson.com/bins/okuxu ...我想首先将客户端名称绑定到其各自的下拉列表。
示例 json 数据:
[
{
"abc_buildingid": "11111112-64c2-5bd8-8b72-e92568694c76",
"abc_energyprogramid": "5d84ef73-9b9a-475f-84e2-f307ad897df7",
"siteName": "Construction One",
"sampleCalibration": false,
"clientName": "Client-1",
"segmentName": "John Doe ES New Silver 4-7-2017-04-30-2018~25313~John Doe ES JDU Area Calibration~47851~Mod",
"cfmRateFactor": 50
}
]
Run Code Online (Sandbox Code Playgroud)
...这是我的代码:
import React, { Component } from 'react';
class Ast extends Component {
constructor(){
super();
this.state = {
data: [],
};
} //end constructor
bindDropDowns() {
var clientName = document.getElementById('clientName').value
for(var i=0; i < this.state.data.length; i++) {
var …Run Code Online (Sandbox Code Playgroud) 我是使用 Razor 页面的新手,因此我在模型目录中有一个具有以下值的类:
public int Id { set; get; }
public string CustomerCode { set; get; }
public double Amount { set; get; }
Run Code Online (Sandbox Code Playgroud)
在我的控制器(.cs 文件)中,我有以下内容:
public ActionResult Index()
{
Customer objCustomer = new Customer();
objCustomer.Id = 1001;
objCustomer.CustomerCode = "C001";
objCustomer.Amount = 900.78;
return View();
}
Run Code Online (Sandbox Code Playgroud)
...现在,我想通过我的 Index.cshtml 页面显示这些值,但是当我运行该应用程序时,我只得到我输入的与值相反的实际代码:
...这就是 .cshtml 页面设置的方式:
@model Mvccustomer.Models.Customer
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
<div>
The customer id is : <%= Model.Id %> <br />
The customer id is : <%= Model.CustomerCode %> …Run Code Online (Sandbox Code Playgroud) 我的目标是创建一个运行JSON Rest服务的React JS登录页面。在Postman中,当我输入服务的URL时,将其设置为以POST身份运行,然后在正文中输入以下JSON:{用户名:“ myUserName”,密码:“ myPassword”} ...返回令牌。因此,在我的fetch子句中,我使用JSON.stringify将用户名和密码传递给服务器。
我是刚开始使用Fetch和react的,所以我的问题是,我如何开始对各种用户进行身份验证,而仅将React JS和fetch一起使用?我想,我要在Fetch子句的第二个语句中编写逻辑?
当前,我的页面接受任何凭据,并在单击“提交”按钮后将用户引导到登录页面。我有一个包含fetch的函数,现在在单击onSubmit按钮后立即调用fetch函数,该按钮现在捕获令牌。
这是我的代码:
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import './Login.css';
import { withRouter } from 'react-router-dom';
class Login extends Component {
constructor() {
super();
this.state = {
data: [],
username: "",
password: "",
token: "",
};
} //end constructor
componentWillMount() {
}
componentDidMount() {
this.fetchData();
}
fetchData() {
fetch('http://theapi/api/auth', {
method: 'POST',
headers: {
'Content-type': 'application/json',
},
body: JSON.stringify({
username: 'myUserName',
password: 'myPassword',
Authorization: 'TheReturnedToken',
})
}) …Run Code Online (Sandbox Code Playgroud) 我有这个fetch语句返回 19 个建筑物名称,但我只想要 10 个;以下是我尝试过的,但我仍然得到 19 个建筑物名称。
fetchBuildings(energyProgramId) {
fetch(`http://localhost:1001/api/energyprograms/${energyProgramId}/buildings/?results=10`)
.then(res => res.json())
.then(json => {
this.setState({
isLoaded: true,
buildings: json,
})
});
}
Run Code Online (Sandbox Code Playgroud)
我需要添加一些额外的东西吗?
我只有一个页面,其中包含两个下拉列表组件;只有成功通过身份验证(有效令牌)后才能访问该页面。两个下拉列表都使用来自不同JSON-API的数据。我有一个下拉列表功能,但另一方面,它的API的URL需要参数。
示例网址: http:// buildingsAPI:111 / api / buildings /
通过带有附加ID的邮递员进行测试: http:// buildingsAPI:111 / api / buildings / abcde-abce-abc2-111-2222
样本Json:
[
{
"abc_buildingid": "1111-2222-3333-aaa-1111117",
"abc_energyprogramid": "abcde-abce-abc2-111-2222",
"siteName": "Building 1",
"Available": false,
"clientName": "Client 1"
},
{
"abc_buildingid": "222-2222-3333-aaa-1111117",
"abc_energyprogramid": "xyz11-abce-abc2-111-2222",
"siteName": "Building 2",
"Available": false,
"clientName": "Client 2"
},
]
Run Code Online (Sandbox Code Playgroud)
...已经通过用户身份验证(localStorage)获得了令牌,但是我还需要将abc_energyprogramid附加/传递为API URL的参数。
... 代码:
constructor(props) {
super(props);
this.getToken = this.getToken.bind(this);
}
componentDidMount() {
const bearerToken = this.getToken();
fetch('http://buildingsAPI:111/api/buildings/?myparam1={abc_energyprogramid}', {
method: 'GET',
headers: {
'Content-type': 'application/json',
'Authorization': `Bearer ${bearerToken}` …Run Code Online (Sandbox Code Playgroud) 我有一个提交表单,由DropDownList控件组成; 它的ListItem值由UniqueIdentifier组成,例如524988aa-0594-4ebe-b7fa-61396855e17f.
我试图通过存储过程将ListItem的值插入到数据库中的表中,但在提交时会出现"从'System.String'到'System.Guid'的无效转换"错误.
超文本:
<asp:DropDownList ID="ddlserver" runat="server">
<asp:ListItem Text="Server 1" Value="88dc9e7d-0904-4a49-a6d9-8d0badfc4d0b" />
<asp:ListItem Text="Server 2" Value="524988aa-0594-4ebe-b7fa-61396855e17f" />
</asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)
代码背后:
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "InsertClient";
cmd.Parameters.Add("@UserId", SqlDbType.UniqueIdentifier).Value = ddlserver.SelectedValue.ToString();
cmd.Parameters.Add("@ClientName", SqlDbType.NVarChar).Value = txtName.Text;
cmd.Parameters.Add("@EmailAddress", SqlDbType.NVarChar).Value = txtEmail.Text;
cmd.Parameters.Add("@PhoneNumber", SqlDbType.NVarChar).Value = txtPhone.Text;
cmd.Parameters.Add("@ServicesNum", SqlDbType.NVarChar).Value = rbzero.Text;
cmd.Connection = con;
Run Code Online (Sandbox Code Playgroud)
存储过程:
ALTER PROCEDURE [dbo].[InsertClient]
@UserId UniqueIdentifier,
@ClientName nvarchar(150),
@EmailAddress nvarchar(150),
@PhoneNumber nvarchar(50),
@ServicesNum nvarchar(50)
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO Client_tb (UserId, ClientName, EmailAddress, PhoneNumber, ServicesNum) …Run Code Online (Sandbox Code Playgroud)