Javascript 在typescript中从模块中注册Knockout.js组件viewmodel
我的viewmodel模块有几个类,所以我想注册一个spesific类作为组件的viewmodel 它说:组件“过滤表”:未知的viewModel值:[object] 这是我在viewmodel模块中的内容Javascript 在typescript中从模块中注册Knockout.js组件viewmodel,javascript,knockout.js,typescript,viewmodel,custom-component,Javascript,Knockout.js,Typescript,Viewmodel,Custom Component,我的viewmodel模块有几个类,所以我想注册一个spesific类作为组件的viewmodel 它说:组件“过滤表”:未知的viewModel值:[object] 这是我在viewmodel模块中的内容 module FilterVM { export class FilterViewModel { //some code } class FilterTableViewModel { } class AttributeTableViewModel { } class Layer
module FilterVM {
export class FilterViewModel {
//some code
}
class FilterTableViewModel {
}
class AttributeTableViewModel {
}
class LayerAttributeViewModel {
}
}
export = FilterVM;
这是我想注册的地方
import FilterVM = require('Scripts/App/Components/AttributeTable/ViewModels/FilterViewModel');
ko.components.register('filter-table', {
viewModel: { require: FilterVM.FilterViewModel },
template: { require: 'text!Scripts/App/Components/AttributeTable/Views/FilterTableView.html' }
});
这有什么不对吗?
require('Scripts/App/Components/AttributeTable/ViewModels/FilterViewModel')代码>
您可能需要将其更改为相对路径。即使TypeScript在编译时找到它。。。运行时库可能不可用。使用类似于require('../AttributeTable/ViewModels/FilterViewModel')代码>等
require('Scripts/App/Components/AttributeTable/ViewModels/FilterViewModel')代码>
您可能需要将其更改为相对路径。即使TypeScript在编译时找到它。。。运行时库可能不可用。使用类似于require('../AttributeTable/ViewModels/FilterViewModel')代码>等已解决
问题出现在这里viewModel:{require:FilterVM.filtervewmodel}
应该是viewModel:FilterVM.filtervewmodel
已解决
问题出现在这里viewModel:{require:FilterVM.filtervewmodel}
应该是不适合我的viewModel:FilterVM.filtervewmodel
。如果我将viewModel:{require:'Scripts/App/Components/AttributeTable/ViewModels/filtervewmodel'}放在文件只有一个类的情况下有效,我想从许多不适用于我的类中选择一个特殊类。如果我将viewModel:{require:'Scripts/App/Components/AttributeTable/ViewModels/filtervewmodel'}放在文件只有一个类的情况下工作,我想从多个类中选择一个特殊类