Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
2191 Lượt xem

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')



Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

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',
Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
0
thg 9 24
1127
0
thg 11 24
1659
2
thg 6 19
7154
3
thg 10 18
14792
1
thg 6 25
3985