日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

moodle 页面联动效果

發布時間:2023/12/14 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 moodle 页面联动效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文件
https://docs.moodle.org/dev/Web_services:Files

Javascript 模塊

https://docs.moodle.org/dev/Javascript_Modules
https://docs.moodle.org/dev/Guide_to_adding_third_party_jQuery_for_AMD
https://docs.moodle.org/dev/Useful_core_Javascript_modules

https://docs.moodle.org/dev/Templates#What_if_a_template_contains_javascript.3F

windows下的相關安裝

安裝 NVM 和node

安裝 NodeJS 的推薦方式是通過Node Version Manager或 NVM。NVM 允許您在計算機上安裝和使用多個不同版本的 NodeJS。支持的 Moodle 版本均使用 NodeJS v14.18.0 版本。

安裝node.js

1、node.js版本要大于14.15小于15.00.0

安裝grunt

安裝watchman

1、在開始菜單里找到Windows PowerShell.并以管理員身份運行

2、輸入以下代碼安裝 watchman

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) https://facebook.github.io/watchman/docs/install.html

注意:使用 Windows PowerShell 安裝watchman 是為了避免提示Set-ExecutionPolicy不是內部命令。
(運行Windows PowerShell后可以輸入 set-ExecutionPolicy RemoteSigned 回車,再輸入 A 回車,再使用Set-ExecutionPolicy 命令不會再提示不是內部命令問題)

打開cmd 命令 提示符

cd D:\wamp64\www\moodle\server\moodle\mod grunt watch

mod/univilab/db/services.php:54
注意:每當services.php 更改時,不要忘記增加插件的version.php 文件中的版本號,否則Moodle 將無法檢測到更改。

https://docs.moodle.org/dev/External_functions_API

https://docs.moodle.org/dev/Adding_a_web_service_to_a_plugin
a list => external_multiple_structure
an object => external_single_structure
a primary type => external_value

https://docs.moodle.org/dev/Web_services_API

'mod_univilab_get_prov_base_images' => array('classpath' => 'mod/univilab/classes/external.php','classname' => 'mod_univilab_external','methodname' => 'get_prov_base_images',//在上面的類中實現這個函數'description' => 'Get the list of base images for a certain environment','ajax' => true,//true/false 如果您允許通過 ajax 調用此 Web 服務功能'type' => 'read', //如果您的函數進行了任何數據庫更改,則值為 'write',否則為 'read'。'capabilities' => 'mod/univilab:addbaseimage'//列出所需的功能函數(在 require_capability() 調用中的那些)(為授權用戶顯示缺少的功能,也為在 Web 界面中手動創建的令牌顯示,這只是提供信息)。),

mod/univilab/db/access.php:75

// 添加一個配置'mod/univilab:addbaseimage' => ['riskbitmask' => RISK_CONFIG,'captype' => 'write','contextlevel' => CONTEXT_SYSTEM,'archetypes' => ['manager' => CAP_ALLOW,],'clonepermissionsfrom' => 'moodle/site:config'],

報錯信息

mod/assign/externallib.php:1710

error: “異常 - Call to undefined function external_multiple_structure()”
errorcode: “generalexceptionmessage”
stacktrace: null
debuginfo: null
reproductionlink: null

1、是名字不一致
public static function get_prov_api_info(baseurl,base_url,baseu?rl,key_id,keysecret,key_secret,keys?ecret,provider_type){
$params = self::validate_parameters(self::get_prov_api_parameters(),array());
}
2、_returns()方法中 代碼不對

此處是正常寫法 public static function get_prov_api_info_returns(){return new external_multiple_structure(new external_single_structure (array('region_id' => new external_value(PARAM_RAW, 'region id'),'pay_type' => new external_value(PARAM_RAW, 'pay type'),))); }

二、檢測到無效的響應值
exception: {message: “檢測到無效的響應值”, errorcode: “invalidresponse”, link: “http://localhost/”,…}
message: “檢測到無效的響應值”
errorcode: “invalidresponse”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/debug/invalidresponse”
2、***_returns()與***_parameters()中的描述未寫

三、檢測到無效的參數值
message: “檢測到無效的參數值”
errorcode: “invalidparameter”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/debug/invalidparameter”

JS中的異步參數名 與 PHP方法中的參數名要一致

const getprovapi = (base_url,key_id,key_secret,provider_type) => {require(['core/ajax'], function (ajax) {var promises = ajax.call([{methodname: 'mod_univilab_get_prov_api_info',args: {base_url: base_url,access_key_id:key_id,access_key_secret:key_secret,provider_type:provider_type}},]);promises[0].done(function (response) {window.console.log('response:'+response);});}); }; $params = self::validate_parameters(self::get_prov_api_info_parameters(),array('base_url'=>$base_url,'access_key_id'=>$access_key_id,'access_key_secret'=>$access_key_secret,'provider_type'=>$provider_type));

四 message: “異常 - Too few arguments to function mod_univilab_external::get_prov_api_info(), 4 passed in [dirroot]\lib\externallib.php on line 261 and exactly 5 expected”
errorcode: “generalexceptionmessage”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/moodle/generalexceptionmessage”


public static function get_prov_api_info_returns(){return new external_multiple_structure(new external_single_structure (array('region_id' => new external_value(PARAM_RAW, 'region id'),'pay_type' => new external_value(PARAM_RAW, 'pay type'),))); }

對外服務說明

https://docs.moodle.org/dev/External_services_description

參數類型
請注意,此列表在您閱讀時幾乎肯定會過時。幫自己一個忙,看看 lib/moodlelib.php 中的列表。這保證是最新的。

‘PARAM_ALPHA’, ‘阿爾法’
‘PARAM_ALPHAEXT’, ‘alphaext’
‘PARAM_ALPHANUM’, ‘字母數字’
‘PARAM_ALPHANUMEXT’, ‘alphanumext’
‘PARAM_AUTH’, ‘認證’
‘PARAM_BASE64’, ‘base64’
‘PARAM_BOOL’, ‘布爾’
‘PARAM_CAPABILITY’, ‘能力’
‘PARAM_CLEANHTML’, ‘cleanhtml’
‘PARAM_EMAIL’, ‘電子郵件’
‘PARAM_FILE’, ‘文件’
‘PARAM_FLOAT’, ‘浮動’
‘PARAM_HOST’, ‘主機’
‘PARAM_INT’, ‘int’
‘PARAM_LANG’, ‘lang’
‘PARAM_LOCALURL’, ‘localurl’
‘PARAM_NOTAGS’, ‘notags’
‘PARAM_PATH’, ‘路徑’
‘PARAM_PEM’, ‘pem’
‘PARAM_PERMISSION’, ‘權限’
‘PARAM_RAW’, ‘原始’
‘PARAM_RAW_TRIMMED’, ‘raw_trimmed’
‘PARAM_SAFEDIR’, ‘safedir’
‘PARAM_SAFEPATH’, ‘安全路徑’
‘PARAM_SEQUENCE’, ‘序列’
‘PARAM_TAG’, ‘標簽’
‘PARAM_TAGLIST’, ‘標簽列表’
‘PARAM_TEXT’, ‘文本’
‘PARAM_THEME’, ‘主題’
‘PARAM_URL’, ‘url’
‘PARAM_USERNAME’, ‘用戶名’
‘PARAM_STRINGID’, ‘stringid’
‘PARAM_CLEAN’, ‘干凈’
‘PARAM_INTEGER’, ‘int’
‘PARAM_NUMBER’, ‘浮動’
‘PARAM_ACTION’, ‘alphanumext’
‘PARAM_FORMAT’, ‘alphanumext’
‘PARAM_MULTILANG’, ‘文本’
‘PARAM_TIMEZONE’, ‘時區’
‘PARAM_CLEANFILE’, ‘文件’
‘PARAM_COMPONENT’, ‘組件’
‘PARAM_AREA’, ‘區域’
‘PARAM_PLUGIN’, ‘插件’
——————————————————————————————
Windows下安裝及使用NVM
https://github.com/coreybutler/nvm-windows/releases

https://github.com/nvm-sh/nvm#installing-and-updating

command -v nvm //驗證nvm是否已安裝成功 nvm install 14.18.0 //安裝指定的版本的nodejs nvm use 14.18.0 //使用指定版本的nodejs

nvm的使用

nvm arch [32|64]: 顯示node是運行在32位還是64位模式。指定32或64來覆蓋默認體系結構。 -nvm install <version> [arch]:該可以是node.js版本或最新穩定版本latest。(可選[arch])指定安裝32位或64位版本(默認為系統arch)。設置[arch]為all以安裝32和64位版本。在命令后面添加– insecure,可以繞過遠端下載服務器的SSL驗證。 nvm list [available]:列出已經安裝的node.js版本。可選的available,顯示可下載版本的部分列表。這個命令可以簡寫為nvm ls [available]。 nvm on: 啟用node.js版本管理。 nvm off: 禁用node.js版本管理(不卸載任何東西) nvm proxy [url]: 設置用于下載的代理。留[url]空白,以查看當前的代理。設置[url]為none刪除代理。 nvm node_mirror [url]:設置node鏡像,默認為https://nodejs.org/dist/.。可以設置為淘寶的鏡像https://npm.taobao.org/mirrors/node/ nvm npm_mirror [url]:設置npm鏡像,默認為https://github.com/npm/npm/archive/。可以設置為淘寶的鏡像https://npm.taobao.org/mirrors/npm/ nvm uninstall <version>: 卸載指定版本的nodejs。 nvm use [version] [arch]: 切換到使用指定的nodejs版本??梢灾付?2/64位[arch]。 -nvm use <arch>:將繼續使用所選版本,但根據提供的值切換到32/64位模式 nvm root [path]: 設置 nvm 存儲node.js不同版本的目錄 ,如果未設置,將使用當前目錄。 -nvm version: 顯示當前運行的nvm版本,可以簡寫為nvm v nvm version //顯示當前運行的nvm版本,可以簡寫為nvm v

總結

以上是生活随笔為你收集整理的moodle 页面联动效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲午夜久久久久久久国产 | 男女插鸡视频 | 欧美三级视频在线观看 | 93久久精品日日躁夜夜躁欧美 | 四房婷婷| 日本一区二区三区视频在线播放 | 中文字幕国产亚洲 | 色999视频| 九草网 | 亚洲美女视频在线 | 国产成人一区二区三区视频 | 国产精品图片 | 欧美一级欧美三级在线观看 | 欧美激情亚洲综合 | av撸撸在线| 成人性生交大全免 | 国产黄在线 | 国产精品午夜福利视频234区 | 操操操综合| 国产色播av在线 | 麻豆成人免费视频 | 高h奶汁双性受1v1 | 我们2018在线观看免费版高清 | xfplay5566色资源网站 | 中文字幕99| √天堂| 四虎网站在线观看 | 欧美寡妇性猛交ⅹxxx | 殴美一级片| www视频在线观看免费 | 黑人操日本| 色哟哟国产精品色哟哟 | 中文字幕av在线播放 | 国产精品久久不卡 | 亚洲爆爽| 深夜av在线 | 国产成人aⅴ | 国产系列在线观看 | 日韩视频一区二区三区在线播放免费观看 | 天天射网站 | 91资源在线播放 | 亚洲 美腿 欧美 偷拍 | 麻豆三级在线观看 | 高清不卡一区二区三区 | 黄色精品视频在线观看 | 中文字幕一区二区三区电影 | 97精品视频在线 | 久久在线免费视频 | 永久免费成人代码 | 九九九九精品九九九九 | 国产欧美日韩免费 | 香蕉精品在线 | 五月激情六月婷婷 | 国产乱淫av麻豆国产 | 黑人与亚洲人色ⅹvideos | 大黑人交xxx极品hd | 成人免费黄色大片v266 | 1769国产精品视频 | 在线视频观看免费 | 国产精品污www一区二区三区 | 亚洲视频网站在线观看 | 成人激情视频网 | 成色视频 | 一区二区三区高清不卡 | 佐佐木明希av在线 | 日韩国产亚洲欧美 | caopeng在线 | 黄色av网站在线 | 国产精品视频一区二区三 | 欧美一区二区三区视频在线观看 | 岛国av免费在线 | 欧美丰满老熟妇xxxxx性 | 国产啪视频 | www.av黄色| 日在线视频 | av在线日韩| 日韩精品一区二区亚洲av性色 | 九九热色| 特黄aaaaaaaaa毛片免费视频 | 美女一二区 | 黄色链接视频 | 亚洲自拍偷拍网 | 在线观看小视频 | 欧美日比视频 | 欧美一区二区三区电影 | 男人和女人搞鸡 | 黑帮大佬和我的365日第二部 | www.youjizz.com国产| 在线视频日韩 | 手机在线永久免费观看av片 | 国产69精品久久 | 国产成人精品一区在线播放 | 欧美成人黄色小视频 | 欧美一区二区三区激情视频 | 无码人妻精品一区二区三区在线 | 伊人成人在线 | 免费特级黄色片 | 白嫩少妇激情无码 | 亚州av片 |