我对Yii 2和AngularJS都有经验,但分别是。我有两个问题:
在Yii 2的视图中 可以使用 AngularJS 吗?我问 可能 的替代 是可行的 ,因为我觉得这个问题可以在路由到了。
另外,将Yii 2和AngularJS一起使用是否对性能来说足够公平?(两者都是MVC,因此都是模块化,可管理的代码。)
我搜索了很长时间,但是找不到任何合适的资源。有什么解释!
是的* ,您可以在实施其他生根方法后在 Yii 2 视图中使用 AngularJS 。这是从开始的教程。 *
但是 不 ,我不建议您这样做(尽管 Yii 2 和 AngularJS 都是具有REST原生支持的出色框架)。因此,正确的方法是使用 AngularJS 构建 前端 并使用 Yii 2 来提供服务器API。这是一个很好的结构:
project/ backend/ // Yii 2 application web/ // Public visible backend folder index.php // Entry point config/ controllers/ models/ ... frontend/ app/ // Your AngularJS application here css/ // Styles (.less or .css) img/ // Images lib/ // Third-party libraries such as jQuery or AngularJS js/ // .js files (controllers, services, etc.) partials/ // Templates (.html) index.html tests/ // AngularJS tests node_modules/ ...
在Yii的REST的API框架将提供一个干净的API可以与您的沟通内置的 AngularJS 应用程序或者一个未来的移动应用程序,甚至提供 资源和/或服务的 其他网站或软件。如果您关心性能,请同时使用两者并使用REST。结构良好的RESTful应用程序非常适合轻松构建具有良好灵活策略的良好 缓存 系统。您甚至可以将后端和数据库托管在服务器(如Amazon EC2)上,仅提供 JSON(和/或XML) 数据,以最小化带宽使用,并将前端存储在优化的CDN上 (例如Amazon S3或其他CDN提供商)具有更低的成本和更快的答案。
这是在REST中实现AngularJS和Yii 2的两个示例:this和this。