我花了两天时间试验这个,到目前为止还没有取得任何进展.我有一个非常基本的ASP.NET核心网站,为Typescript 2.9配置.我希望我的前端非常简单,每页只有一个vue应用程序,没有复杂的构建系统或组件.
我想让某种配置工作在最低限度.这是我当前的tsconfig.json文件:
{
"compilerOptions": {
"declaration": true,
"mapRoot": "/js/",
"module": "esnext",
"removeComments": true,
"sourceMap": true,
"target": "esnext"
},
"compileOnSave": true
}
Run Code Online (Sandbox Code Playgroud)
(注意,我已经尝试过模块es6,es5,也没有尝试过)
然后,在我的wwwroot/js文件夹中,我有Site.ts,看起来像这样:
import { Vue } from "./types/vue";
var _mixin: any;
var _vue = new Vue({
el: '#vueheader',
mixins: [_mixin],
data: {
},
methods: {},
mounted: function () {
},
});
Run Code Online (Sandbox Code Playgroud)
在wwwroot/js/types文件夹中,我有来自vue的5个d.ts文件以及vue.js文件.打字稿正确编译成一个js文件,但当我访问主页时,我在chrome中得到错误"404,找不到文件/ types/vue"
这是编译的Site.js:
import { Vue } from "./types/vue";
var _mixin;
var _vue = new Vue({
el: '#vueheader',
mixins: [_mixin],
data: {},
methods: {},
mounted: function () …Run Code Online (Sandbox Code Playgroud) 问题:我们正在从旧系统升级,因此解决方案受到限制。如果存在特定的查询字符串,我正在尝试路由到未经授权的控制器。如果不存在,则将用户路由到授权控制器。这是在 ASP.Net Core 2.1 上。
是否可以将控制器设置为基于查询字符串进行路由?我试过了
[/home/[action]?query={query}] -> 由于“?”导致运行时错误
[/home/[action]/{query}] - > 映射到 /home/index/1 (不是我需要的)
谢谢你的帮助!
编辑:或者,是否可以有一个单独的控制器 Action 取决于查询参数?
public IActionResult Index(){}
public IActionResult Index([FromQuery]string query){}
Run Code Online (Sandbox Code Playgroud)
路由似乎没有区分这两者。