我有一个有app的快递应用程序,在app.js中调用,如下所示
using System;
using System.Data;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
namespace GridScrollViewer
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
CreateDataGrid();
}
public void CreateDataGrid()
{
DataTable dt = new DataTable();
dt.Columns.Add("Col 1", typeof(string));
dt.Columns.Add("Col 2", typeof(string));
dt.Columns.Add("Col 3", typeof(string));
dt.Columns.Add("Col 4", typeof(string));
dt.Columns.Add("Col 5", typeof(int));
dt.Columns.Add("Col 6", typeof(int));
dt.Columns.Add("Col 7", typeof(int));
dt.Columns.Add("Col 8", typeof(int));
dt.Columns.Add("Col 9", typeof(int));
dt.Columns.Add("Col 10", typeof(int));
dt.Columns.Add("Col 11", typeof(int));
dt.Columns.Add("Col 12", typeof(int));
dt.Columns.Add("Col 13", typeof(int));
dt.Columns.Add("Col 14", typeof(int));
for (int i = 0; i < 10; i++)
{
dt.Rows.Add("First field",
"Second field",
"Third field",
"Fourth field",
100*i+i,
100 * i + i+1,
100 * i + i+2,
100 * i + i+3,
100 * i + i+4,
100 * i + i+5,
100 * i + i+6,
100 * i + i+7,
100 * i + i+8,
100 * i + i+9);
}
myGrid.DataContext = dt;
}
public void UpdatemyColumnsText()
{
double size = 0;
if (myGrid.Columns.Count > 4)
{
size = myGrid.Columns[0].ActualWidth
+ myGrid.Columns[1].ActualWidth
+ myGrid.Columns[2].ActualWidth
+ myGrid.Columns[3].ActualWidth;
}
myColumnsText.Text = ((int)size).ToString();
}
public void UpdateScrollViewerText()
{
ScrollViewer sc = (ScrollViewer)VisualTreeHelper.GetChild(
(VisualTreeHelper.GetChild(myGrid, 0)), 0);
myScrollViewerText.Text = "actual width: " + (int)sc.ActualWidth
+" - desired size: " + (int)sc.DesiredSize.Width
+" - render size: " + (int)sc.RenderSize.Width
+" - viewport: " + (int)sc.ViewportWidth;
myScrollViewerOffsetText.Text = ((int)sc.HorizontalOffset).ToString();
}
public void UpdateExpectedWidth()
{
double expectedWidth = 0;
if (myGrid.Columns.Count > 4)
{
expectedWidth = myGrid.ActualWidth -(myGrid.Columns[0].ActualWidth
+ myGrid.Columns[1].ActualWidth
+ myGrid.Columns[2].ActualWidth
+ myGrid.Columns[3].ActualWidth);
}
myExpectedValueText.Text = ((int)expectedWidth).ToString();
}
private void myGrid_LayoutUpdated(object sender, EventArgs e)
{
UpdatemyColumnsText();
UpdateScrollViewerText();
UpdateExpectedWidth();
}
}
}
我的app.js文件中的错误处理中间件之前也使用过这个中间件
module.exports = function(app, db){
app.get('/users', function(req, res) {
res.sendFile(path.join(__dirname, '../views/users.html'));
});
};
问题在于,当中间件未被注释时,用户路由返回404,但是当中间件被注释时,路由用户正常工作。知道发生了什么
答案 0 :(得分:0)
您可以在其他app.use()和路由调用之后定义错误处理中间件;
所以我认为你在用户路由之前定义404。这可能是问题所在。