Web_Design 板


LINE

从开始研究网页设计以来一直都是用jQuery来处理JS的问题 只是一直有呼声说jQuery已经落伍该被淘汰了,於是最近开始研究Vue.js框架 Vue.js的设计理念跟jQuery差很大,但只要习惯了就会发现很方便 只是在ajax的部分到目前为止我还是觉得jQuery还是最好用的 例如下面的例子,这是一个利用jQuery制作的导览列--- [index.html] ... <div> <nav> <li> <div>JS应用范例</div> <ul> <li><a id="Calculator">计算机</a></li> </ul> <div>jQuery练习</div> <ul> <li><a id="JSON">JSON资料处理</a></li> </ul> <div>PHP整合应用</div> <ul> <li><a id="SingUp">注册</a></li> <li><a id="Login">登入</a></li> <li><a id="reCAPTCHA">Google验证</a></li> <li><a id="get_client_ip">取得客户端IP</a></li> </ul> </li> </nav> <div id="content"> </div> </div> <script> $(function () { // alert("ready event!"); $("li > a").click(function(e){ var url; switch(e.target.id){ case "Calculator": url = "./_page/calculator.html"; break; case "JSON": url = "./_page/json.html"; break; case "SingUp": url = "./_page/singup.html"; break; case "Login": url = "./_page/login.html"; break; case "reCAPTCHA": url = "./_page/captcha.html"; break; case "get_client_ip": url = "./_page/get_client_ip.html"; break; } //使用load方法将取得的页面资料渲染到div上 $("#content").load(url); }); //End click }); //End jQuery main </script> 然後下面我打算用Vue.js的方式去取代--- ajax方面使用Vue.js 2官方推荐的axios插件 [index.html] <head> <meta charset="UTF-8"> <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.10/vue.min.js"></script> <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <title>Vue.js练习</title> </head> <body> <div id="main"> <nav @click="navigate"> <li> <div>JS应用范例</div> <ul> <li><a id="Calculator">计算机</a></li> </ul> <div>jQuery练习</div> <ul> <li><a id="JSON">JSON资料处理</a></li> </ul> <div>Vue.js练习</div> <ul></ul> <div>PHP整合应用</div> <ul> <li id="SingUp">注册</li> <li id="Login">登入</li> <li id="reCAPTCHA">Google验证</li> <li id="get_client_ip">取得客户端IP</li> </ul> </li> </nav> <div v-html="content"> <!-- 把用ajax捞回来的资料渲染到这里 --> </div> </div> <script> var vue = new Vue({ el: '#main', data: { content: "请选择左边项目" }, methods: { navigate: function (e) { var url,data; switch (e.target.id) { case "Calculator": url = "page1.html"; break; } axios.get(url) .then(function (response) { data = response.data; }) .catch(function (error) { }); //将利用axios插件的get取得的网页资料指定到content上 this.content = data; } } }) </script> </body> </html> 结果捞回来的资料完全没办法像用$jQuery.load()方法一样 连css效果跟JS程式码一起正常运作,请问有什麽方法可以解决这个问题吗? --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 175.181.97.146
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Web_Design/M.1509274876.A.EAF.html
1F:→ pop0030: 你没考虑到async(非同步)的问题 10/29 21:23
2F:→ pop0030: https://jsfiddle.net/3s3yhsvp/ 10/29 21:31
不好意思,我琢磨这句好久一直搞不懂意思,可以麻烦大大讲解得具体一点吗?谢谢 ※ 编辑: chenjoe (175.181.97.146), 10/29/2017 23:35:09
3F:→ dannypsnl: 你data还没有东西就被指定给content了 10/29 23:39
4F:→ dannypsnl: axios拿资料的动作是非同步的 10/29 23:40
所以$jQuery.load()其实是送出一个同步的GET请求到Sever拿网页丢回给前端? 可是axios好像没办法同步? ※ 编辑: chenjoe (175.181.97.146), 10/30/2017 07:19:18
5F:→ pop0030: $jQuery.load()也是非同步的方法 10/30 09:12
6F:→ pop0030: 不过你用的$('#content').load(url)是处理过非同步缩写 10/30 09:13
7F:→ xdraculax: 直接点就是塞内容那行放 then 里 10/30 12:01
8F:→ jhnny97: 你用chrome的话开一次开发者工具看network资料怎麽跑 10/30 14:02
9F:→ jhnny97: 你就知道怎麽处理问题了 10/30 14:02
10F:→ AllenGuan: 把then那行改成then(res => this.content = res.data) 11/03 12:08







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP