как правильно пользоваться RequireJS ?
Хочу сделать так что бы в конфиге определить название модуля - путь и потом подключать потом по имени только.
basket.html: <script data-main="assets/js/page_js/basket.js" src="assets/js/require.js"></script> basket.js:
require(["order_entity", "databaseModule"], function(order_entity, databaseModule) {
// databaseModule(10, 20);
});
Или мне делать так в каждом файле ? но это же не удобно
require.config({
baseUrl: "modules",
paths: {
"constants": "../modules/constants",
"firebase": "../modules/firebase/firebase-app",
"firebase-auth": "../modules/firebase/firebase-auth",
"firebase-database": "../modules/firebase/firebase-database",
"databaseModule": "../modules/databaseModule",
"user_entity": "../modules/entities/user",
"order_entity": "../modules/entities/order"
},
callback: function (constants) {
console.log(constants.url);
console.log("eeee");
}
});
|
1 раз конфиг задается, в данном случае в точке входа (assets/js/page_js/basket.js)
|
Я перенёс в config_modules. A потом как подсоединить его в других файлах? У меня не получается. Он не берет нормальный путь что я указал в PATH
|
Цитата:
require.config({
baseUrl: "assets/js/modules",
paths: {
constants: "constants",
firebase: "firebase/firebase-app",
firebase_auth: "firebase/firebase-auth",
firebase_database: "firebase/firebase-database",
databaseModule: "databaseModule",
user_entity: "entities/user",
order_entity: "entities/order"
},
callback: function (constants) {
//console.log(constants.url);
//console.log("eeee");
}
});
require(["constants", "firebase"], function (constants, firebase) {
var conf = constants.config_db;
database = firebase.initializeApp(conf);
console.log(constants.url);
// databaseModule(10, 20);
});
Сделал пока так но как то хочется конфиг вынести в какой то общий файл ... |
evgeniy123,
в доках написано, что можно так
<script>
var require = {
baseUrl: "assets/js/modules",
paths: {
constants: "constants",
firebase: "firebase/firebase-app",
firebase_auth: "firebase/firebase-auth",
firebase_database: "firebase/firebase-database",
databaseModule: "databaseModule",
user_entity: "entities/user",
order_entity: "entities/order"
},
callback: function(constants) {
//console.log(constants.url);
//console.log("eeee");
}
};
</script>
<script data-main="assets/js/page_js/basket.js" src="assets/js/require.js"></script>
https://github.com/requirejs/require...he-main-module Проверьте... |
Цитата:
Сделал :) Осталось только понять как сделать агрузку оптимальной .Сейчас приходится
...
<head>
<meta charset="UTF-8">
<script data-main="assets/js/modules/config_modules.js" src="assets/js/require.js"></script>
...
Смотрел но так не нашел эффективного и быстро решить такую проблему .. |
Что за оптимальная загрузка?
Так работает? <script src="assets/js/modules/config_modules.js"></script> <script data-main="assets/js/page_js/basket.js" src="assets/js/require.js"></script> и в config_modules.js
var require = {
baseUrl: "assets/js/modules",
paths: {
constants: "constants",
firebase: "firebase/firebase-app",
firebase_auth: "firebase/firebase-auth",
firebase_database: "firebase/firebase-database",
databaseModule: "databaseModule",
user_entity: "entities/user",
order_entity: "entities/order"
},
callback: function(constants) {
//console.log(constants.url);
//console.log("eeee");
}
};
|
да. Но нужно в header обязательно ставить:
<script src="assets/js/modules/config_modules.js"></script> Не могу поставить перед </body> оба script |
| Часовой пояс GMT +3, время: 03:42. |