我根据Aurelia Skeleton Plugin创建了一个新插件。但我不知道如何使其可配置。我希望用户在添加插件时设置属性(特定于API路径)。因此,只要他们使用插件,就可以根据需要配置它。
答案 0 :(得分:2)
configure
方法添加第二个“回调”参数:configure(frameworkConfig, callback) {
const myPluginConfiguration = new MyPluginConfiguration();
if (callback instanceof Function) {
callback(myPluginConfiguration);
}
myPluginConfiguration.apply();
使用插件的应用程序会在main.js中执行类似的操作
...
.plugin('my-plugin', config => config.apiPath('https://api.foo.com/'))
...
您的插件的配置类可能如下所示:
export class MyPluginConfiguration {
apiPath(path) {
// do something with path
}
apply() {
// any final configuration...
}
}
以下是一个官方示例:https://github.com/aurelia/validation/blob/master/src/aurelia-validation.ts#L53