Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
1754 Vues

In odoo17 i written code in javascript which actually fetch the gps coordinates from user and then call backend python method which use this coordinates to give route from user's location to task location.


For that when i define 

odoo.define('industry_fsm.user_location', function (require) {
'use strict';

var rpc = require('web.rpc');


I'm getting error and even my odoo page not loading. when i inspect can see below error:

Uncaught Error: Dependencies should be defined by an array

then when i use [], before function,

odoo.define('industry_fsm.user_location',[] function (require) {
'use strict';

var rpc = require('web.rpc');
    function callPythonMethod(param1, param2) {
        return rpc.query({
​model: 'project.task',
            method: 'action_fsm_navigate',
            args: [param1, param2],
        }).then(function (result) {
            console.log(result); // Handle the result from the Python method
        }).catch(function (error) {
            console.error('Error:', error);
        });
    }


The page is loading properly but when the javascript method which actually call the python method is trigger I got the below error:


UncaughtClientError > TypeError


Uncaught Javascript Error > Cannot read properties of undefined (reading 'query')


TypeError: Cannot read properties of undefined (reading 'query')



Avatar
Ignorer
Auteur Meilleure réponse

I got the answer that in Odoo17, Instead of using the custom AMD module system (odoo.define and require), Odoo now encourages using the ES6 import syntax, which is widely adopted across the JavaScript ecosystem.

Example Code:



/** @odoo-module **/

import { jsonrpc } from "@web/core/network/rpc_service";

async function callPythonMethod(user_lat, user_lon) {
    alert("callPythonMethod function called");
    try {
        const result = await jsonrpc('/controller_path',
Avatar
Ignorer
Publications associées Réponses Vues Activité
0
sept. 24
840
0
nov. 24
1176
2
juin 19
6887
3
oct. 18
14483
1
juin 25
3588