[英]Bundling images with Grails plugins, refering those images from an application using the plugin does not work
[英]Aurelia bundling components from plugins with external dependencies
我很難捆綁使用Aurelia用打字稿編寫的自定義插件。 似乎總是從node_modules獲取類。 如果可以,我可以忍受,但是后來我意識到使用外部庫的所有組件都根本不會加載。 例如,我有一個對話框組件,該組件使用從未加載的aurelia-dialog,即使在將該組件從/ src文件夾移至外部插件之前,該組件運行良好,也沒有任何錯誤或控制台上的任何內容。
供參考,由打字稿編譯生成的index.js如下所示:
define(["require", "exports", "./ui/dialog-box", "./ui/message-box", "./attributes/active"], function (require, exports, dialog_box_1, message_box_1, active_1) {
"use strict";
exports.DialogBox = dialog_box_1.DialogBox;
exports.MessageBox = message_box_1.MessageBox;
exports.ActiveCustomAttribute = active_1.ActiveCustomAttribute;
function configure(config) {
config.globalResources(['./ui/empty-state', './ui/tool-bar']);
}
exports.configure = configure;
});
//# sourceMappingURL=index.js.map
和我的aurelia.json中的vendor-bundle下的include看起來像這樣:
{“名稱”:“ sam-aurelia”,“路徑”:“ ../ node_modules / sam-aurelia / src”,“ main”:“索引”}
所以我的問題是:有誰知道當這些組件來自插件時,什么原因導致它們無法加載?
獎勵問題:
謝謝!
編輯以解釋我的解決方案
抱歉,我還沒有捆綁禁用或加載調試的解決方案。 如下面的答案所述,在我的軟件包的配置中(在aurelia.json中)將'stub'選項設置為'true'可以防止html / css文件的捆綁。 似乎添加全局文件來加載這些文件也有所幫助。 第二個問題是因為我沒有在插件的索引中導出某些組件。 當我為這些組件添加導出文件時,html文件已正確捆綁。 最后,與這些最后的文件有關,這些文件包括一個外部插件。 我注意到瀏覽器嘗試從node_modules / plugin / src / index.html加載其html模板。 我想這是由於它們是通過索引文件公開的,所以aurelia嘗試獲取與索引相關的模板。 將這些文件添加到globalresources可以解決此問題(盡管我不確定為什么會這樣)。
我現在可以走了,盡管我可能會花一些時間將代碼放在單獨的模塊中,看看是否真的有必要將組件添加到globalresources中。
任何全球資源都需要導出以進行跟蹤(空狀態和工具欄)。 如果您有非js文件,則需要將它們添加到aurelia.json中的resources數組中:
{
"name": "sam-aurelia",
"path": "../node_modules/sam-aurelia/src",
"main": "index",
"resources": ["**/*.{html,css}"]
}
並且:
"stub": false
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.